2 въпроса за потребителска система...

cold_zero

Registered
Как да напрява, така че потребителите да си качват аватари само до 150px. ширина и дължина...?

Другия въпрос е как да направя система за лични съобщения м/у регистрираните потребители в сайта?

Ако може някой да помогне :) ще съм му много благодарен.
 
В администраторския панел(говоря за пхпбб2).

А личните собщения по принцип не са ли сами за рекгистрирани потребители?
 
Аз не говоря за phpBB говоря за php скрипт за регистрация на потребители искам да въведа и лични съобщения, но не знам как :cry:

А за аватара, не говоря за phpBB, а просто като си качи някой регистриран потребител аватар в сайта ми искам да се позволява този аватар да е с макс 150px. ширина и дължина.
 
//оф
е мн благодаря вече щте почна да пиша скрипт за аватари
на логин системата ми
оф//
 
като за начало ето ти това..
<?php
$file = "картинка.jpg";
list($width, $height, $type, $attr,$size) = getimagesize($file);
echo 'Широчина :'.$width.'<br>Височина:'. $height.'<br>';
echo 'Големина:'.filesize($file).'bytes<br>';
echo 'Директно вкарване на височината и широчината в тага img:<br>';
echo '<img src="'.$file.'" '. $attr .'>';
?>
от тези работи взимаш широчината и височината..
с 1 if проверяваш дали са с допостими стойности и ако са минава , ако не показва съобщение или там каквото искаш.
Също може да провериш и за големината на картинката ...
много внимавай с тези ъплоади на аватари ... трябва да има проверка дали се качват само картинки .. иначе.. ще ти стане кофти :)
За личните съобщения.. не ми се пишат скриптове.. в нета сигурно има много готови ...потърси пък ако не намериш ..ще ти намерим :)
 
Намерих скрипт за лични съобщения от един скрипт за регистрации на vesku, но не мога да го редактирам спрямо моята система :cry:
 
cold_zero каза:
Намерих скрипт за лични съобщения от един скрипт за регистрации на vesku, но не мога да го редактирам спрямо моята система :cry:
какво точни искаш
 
cold_zero каза:
Намерих скрипт за лични съобщения от един скрипт за регистрации на vesku, но не мога да го редактирам спрямо моята система :cry:

Всичко трябва да стане постепенно.
Създаваш си сайта, регистрацията и т.н.
После почваш да добавяш екстри.
НЕ може обаче да използваш готови скриптове току така.
Те не са съобразени нито с базата данни на твоята система нито с
нуждите ти.

Четеш даден пример за да видиш как става по-принцип и после си пишеш сам всичко.
 
baf ... има ли начин да се вземе височина и широчина, ако картинката не е на хоста на който е скрипта ? :roll:
 
Ами твоя скрипт за лични съобщения да се редактира спрямо моята потребителска система...промених някои неща, но без успех. Та ако може някой да помогне... :roll:
 
admin направих промените за базата данни... добавих нужните таблици...пробвах записва си всичко без от кой е изпратено съобщението и като влеза през потребителя на който съм пратил съобщението там няма съобщение :?
 
Soul_Stealler каза:
baf ... има ли начин да се вземе височина и широчина, ако картинката не е на хоста на който е скрипта ? :roll:
да.Просто въведи url-a на картинката..
разбира се размера на файла няма начин да го вземе.
cold_zero ами дай поне да видим системата..
няма как да налучкаме проблема...
 
Код:
<?php
	include_once ("../auth_member.php");
	include_once ("../check_member.php");	
session_start();
ob_start();
if($_SESSION['uname'])
{
echo '<center><div align="center"><b><a href="?page=inbox">Inbox</a> | <a href="?page=write">New Message</a></b></div>';
$pmsesusername = $_SESSION['uname'];
include "connect.php";
$db_conn = mysql_connect("$host", "$dbusername", "$dbpassword")
or die("unable to connect to the database");
mysql_select_db("$db", $db_conn) or die("unable to select the database");
switch($_GET[page])
{
default: 
break;
case 'write':
if (!$_POST[send])
{
echo ("<center><form method='POST' style='margin: 0px;'>To:*<br>
            <select name='to'>
");
$getusers = mysql_query("SELECT * FROM authuser ORDER BY 'uname' ASC");
            while ($users = MySQL_Fetch_Array($getusers)) {
    echo ("<center><option value='$users[uname]'>$users[uname]</option>");
}
echo ("<center>
</select>
<br>Message Subject:*
<br><input type='text' name='subject' size='20'>
<br>Message:*
<br><textarea rows='7' name='message' cols='35'></textarea>
<br><input type='submit' value='Submit' name='send'>
</form>
");
}
if ($_POST[to])
{
$subject = htmlspecialchars(addslashes("$_POST[subject]"));
$message = htmlspecialchars(addslashes("$_POST[message]"));
$to = htmlspecialchars(addslashes("$_POST[to]"));
$send = mysql_query("INSERT INTO `pmessages` ( `title` , `message` , 
`touser` , `from` , `unread` , 
`date` ) VALUES ('$subject', '$message', '$to', 
'$pmsesusername', 'unread', NOW())");
echo ("<center>Your message has been sent.");
}
break;
case 'delete':
if (!$_GET[msgid])
{
echo ("<center>Sorry, but this is an invalid message!");
}
else
{
$getmsg = mysql_query("SELECT * from pmessages where id = '$_GET[msgid]'");
$msg = mysql_fetch_array($getmsg);
if ($msg[touser] != $pmsesusername)
{
echo ("<center>This message was not sent to you!");
}
else
{
$delete  = mysql_query("delete from pmessages where id = '$_GET[msgid]'");
echo ("<center>Message Deleted");
}
}
break;
case 'inbox':
$get = mysql_query("SELECT * from pmessages where touser = '$pmsesusername' order by id desc");
echo ("
<table bgcolor='#dddddd' border='0' width='100%' cellspacing='0'>
<tr>
<td align='center'>Subject</td>
<td align='center' width='125'>From</td>
<td align='center' width='97'>Date</td>
<td width='25'>Delete</td>
</tr>
</table>
");
$nummessages = mysql_num_rows($get);
if ($nummessages == 0)
{
echo ("<center>You have 0 messages!");
}
else
{
echo("<table border='0' width='100%' cellspacing='1'>");
while ($messages = mysql_fetch_array($get))
{
echo ("<center>
<tr>
<td><a href='?page=view&msgid=$messages[id]'>");
if ($messages[reply] == yes)
{
echo ("<center>Reply to: ");
}
echo ("<center>$messages[title]</a></td>
<td width='125'>$messages[from]</td>
<td width='97'>$messages[date]</td>
<td width='25'><a href='?page=delete&msgid=$messages[id]'>Delete</a></td>
</tr>");
}
echo ("<center></table>");
}
break;
case 'view':
if (!$_GET[msgid])
{
echo ("<center>Invalid message!");
}
else
{
$getmsg= mysql_query("SELECT * from pmessages where id = '$_GET[msgid]'");
$msg = mysql_fetch_array($getmsg);
if ($msg[touser] == $pmsesusername)
{
if (!$_POST[message])
{
$markread = mysql_query("Update pmessages set unread = 'read' where id = '$_GET[msgid]'");
$msg[message] = nl2br(stripslashes("$msg[message]"));
echo ("<center>
<form method='POST' style='margin: 0px;'>
<b>From: $msg[from]</b><br><b>Subject: $msg[title]</b>
<b><br>Message:<br><u>$msg[message]</u></br></b>
<b>Reply:<br></b>
<center><textarea rows='6' name='message' cols='45'></textarea></center>
<input type='submit' value='Submit' name='send'>
</form>");
}
if ($_POST[message])
{
$message = htmlspecialchars(addslashes("$_POST[message]"));
$do = mysql_query("INSERT INTO `pmessages` ( `title` , `message` , `touser` , `from` , `unread` , 
`date`, `reply`) VALUES
('$msg[title]', '$message', '$msg[from]', '$pmsesusername',
 'unread', NOW(), 'yes')");
echo ("<center>Your message has been sent");
}
}
}
break;
}
}
else
{
echo "Access Denied Please <a href='login.html'>Login</a>";
}
?>

Ако е мтого за редактиране и такива неща няма да ви мъча, зарежете...
 
хм .. ам първо..
сесията която праща твоята система...трябва да е със същотото име т.е. :
$_SESSION['uname']
по-добре го промени на твоята сесия..
2ро...пробвал си да пратиш така ли ?
а сигурен ли си , че е разпознал скрипта от кой юсер е изпратен..
3то..
таблицата ти.. authuser трябва да съдържа данните от юсерите...
4то.. изписва ли ти нещо като пратиш ? пробваш да видиш ?
5то.. след като пратиш съобщение провери със phpmyadmin дали изобщо са се записали данните във базата...
 
Изпраща проверих в базата данни.
Като изпратя ми изписва, че е изпратено успешно.
Сесията съм я махнал.
Единственото нещо което не беше попълнено беше от кой е изпратено съобщението.
Не мога да видя съобщението, не ми го показва.
 
cold_zero каза:
Изпраща проверих в базата данни.
Като изпратя ми изписва, че е изпратено успешно.
Сесията съм я махнал.
Единственото нещо което не беше попълнено беше от кой е изпратено съобщението.
Не мога да видя съобщението, не ми го показва.

Къде не ти го показва?
 
в началото на скрипта сложи:
$pmsesusername = "Username-a";
Щото като си махнал това все едно имаш в полето до потребител едно празно поле :)
сложи това и трябва да стане.
 
Амии потребителя на който съм изпратил съобщението не му го изписва. Не му изписва, че е получил съобщение.
 
виж сега ще ти го обясня по просто..
преди да махнеш $_SESSION['uname']
скрипта взимаше името на юсера пратена по сесия
и с $pmsesusername присвояваме стойноста и.
После когато скрипта търси за съобщения който са изпратени за този потребител .. взима стойноста на $pmsesusername.
Но във случая неможе да я вземи по простата причина , че я няма.
затова ти казах да напишеш името на усера.
и бтв ползвай 1 юсер за тест , а не два.
т.е. пращай на себе си.
 

Back
Горе