ciao a tutti...
ho un problema con un forum board creato da me... sto implementando il profilo e lo stavo finendo se nn fosse per l'errore che mi da adesso quando modifico il profilo...
ecco il codice della pagina profile.php:
Codice PHP:
<?php
$id = $_GET['id'];
$sql = mysql_query("SELECT * FROM utenti WHERE id='$id'");
$row = mysql_fetch_assoc($sql);
$username = username_dauid($row['id'],true);
$nome = $row['nome'];
$email = $row['email'];
$password = $row['password'];
$avatar = $row['avatar'];
$msn = $row['msn'];
$gruppo = $row['gruppo'];
$sql_gruppo = mysql_query("SELECT * FROM gruppi WHERE id_identificativo='".$gruppo."'") or die(mysql_error());
$row_gruppo = mysql_fetch_assoc($sql_gruppo);
$nome_gruppo = $row_gruppo['nome'];
$colore_gruppo = $row_gruppo['colore'];
$tag_prima = $row_gruppo['tag_prima_html'];
$tag_dopo = $row_gruppo['tag_dopo_html'];
if(!$avatar){
$avatar = "img/avatar_predefinito.gif";
}
if (!$nome){
$nome = "N/D";
}
if(!$msn){
$msn = "N/D";
}
if(!$email){
$email = "N/D";
}
$data_reg = $row['data_reg'];
$sql2 = mysql_query("SELECT * FROM utenti_online WHERE chiave_utente='".$row['id']."'") or die(mysql_error());
echo "<div id=\"contenuto\">\n";
pagina_corr("<a href=\"index.php\">$titolo_forum</a> / <span class=\"attivo\">Profile of ".username_dauid($row['id'],false)."</span>");
echo "</div><br>\n";
echo "<center><img src=\"$avatar\" border=\"0\"><br><br>\n";
echo "</center>\n";
echo "<table border=\"0\" cellspacing=\"0\" cellpadding=\"5\" width=\"95%\" align=\"center\">\n";
echo "<tbody><tr><td class=\"forum_header\" align=\"left\" colspan=\"2\">General informations</td></tr>\n";
echo "<tr><td class=\"forum_header2\" width=\"30%\"><b>Username</b></td><td class=\"forum_header2\" width=\"70%\">$username</td></tr>\n";
echo "<tr><td class=\"forum_header2\" width=\"30%\"><b>Real name</b></td><td class=\"forum_header2\" width=\"70%\">$nome</td></tr>\n";
if(mysql_num_rows($sql2) == 0){
$stato = "<font color=\"ff0000\">Offline</font>\n";
}else{
$row2 = mysql_fetch_assoc($sql2);
$pagina_corrente = $row2['pagina_corrente'];
$pagina_corrente_admin = substr($pagina_corrente,0,9);
if($pagina_corrente_admin == "admin.php"){
$pagina_corrente = "Is viewing a profile";
}
$pagina_corrente_profilo = substr($pagina_corrente,0,21);
if($pagina_corrente_profilo == "index.php?act=profilo"){
$pagina_corrente = "Is viewing a profile";
}
$pagina_corrente_forum = substr($pagina_corrente,0,19);
if($pagina_corrente_forum == "index.php?act=forum"){
$pagina_corrente = "Is viewing a forum";
}
$pagina_corrente_discussione = substr($pagina_corrente,0,25);
if($pagina_corrente_discussione == "index.php?act=discussione"){
$pagina_corrente = "Is viewing a dicussion";
}
$pagina_corrente_creadisc = substr($pagina_corrente,0,23);
if($pagina_corrente_creadisc == "index.php?act=crea_disc"){
$pagina_corrente = "Is creating a dicussion";
}
$pagina_corrente_messaggi = substr($pagina_corrente,0,12);
if($pagina_corrente_messaggi == "messaggi.php"){
$pagina_corrente = "Is viewing private messagges";
}
if($pagina_corrente == "index.php"){
$pagina_corrente = "Is viewing the Home Page";
}
if($pagina_corrente == "logout.php"){
$pagina_corrente = "Is doing the Logout";
}
$stato = "<font color=\"green\">Online</font>\n";
$ultima_attivita = "<tr><td class=\"forum_header2\"><b>Last activity</b></td><td class=\"forum_header2\">$pagina_corrente</td></tr>\n";
}
echo "<tr><td class=\"forum_header2\"><b>Status</b></td><td class=\"forum_header2\">$stato</td></tr>\n";
echo $ultima_attivita;
echo "<tr><td class=\"forum_header\" align=\"left\" colspan=\"3\">Forum informations</td></tr>\n";
echo "<tr><td class=\"forum_header2\"><b>Group</b></td><td class=\"forum_header2\" width=\"70%\"><font color=\"".$colore_gruppo."\">".$tag_prima . $nome_gruppo . $tag_dopo ."</font></td></tr>\n";
echo "<tr><td class=\"forum_header2\"><b>Messages</b></td><td class=\"forum_header2\">".messaggi($row['id'])."</td></tr>\n";
echo "<tr><td class=\"forum_header2\"><b>Date of registration</b></td><td class=\"forum_header2\">$data_reg</b></td></tr>\n";
if($_SESSION['uid']){
echo "<tr><td class=\"forum_header\" align=\"left\" colspan=\"3\">Informazione contatti</td></tr>\n";
echo "<tr><td class=\"forum_header2\"><b>Message</b></td><td class=\"forum_header2\"><a href=\"messaggi.php?act=componi&uid=".$row['id']."\">Send a private message</a></td></tr>\n";
echo "<tr><td class=\"forum_header2\"><b>Email</b></td><td class=\"forum_header2\">$email</td></tr>\n";
echo "<form class=\"forum_header2\" action=\"inc/updateinfo.php\" method=\"POST\"><tr><td class=\"forum_header2\"><b>Change e-mail:</b></td><td class=\"forum_header2\"><input type=\"text\" value=\"\" name=\"email\"/> <input type=\"submit\" value=\"Change!\"/></td>\n";
echo "Nome: <input type=\"text\" value=\"\" name=\"username\"/>\n";
echo "<tr><td class=\"forum_header2\"><b>Change Avatar</b></td><td class=\"forum_header2\">Link: <input type=\"text\" value=\"\" name=\"avatar\"/> <input type=\"submit\" value=\"Change!\"/></td></tr></form>\n";
echo "<tr><td class=\"forum_header2\"><b>Change Password</b></td><td class=\"forum_header2\"><a href=\"change_password.htm\">Change Password?</td></tr>";
}
echo "</tbody></table><br>\n";
?>
e la pagina updateinfo.php che modifica i dati nel database..:
Codice PHP:
<?php
include "config.php";
$id = $_POST['id'];
$email = $_POST['email'];
$avatar = $_POST['avatar'];
$sql = "UPDATE `utenti` SET `email` = '$email',`password` = '$password',`avatar` = '$avatar' WHERE id = '$id'";
mysql_query($sql) or die ("Error: ".mysql_error());
echo "Database updated. <a href='./index.php'>Return to your profile</a>";
?>
non mi viene nessun errore ma non si modificano i dati nel db... provando a mettere 1 nell'ID nella pagina updateinfo.php... da così :
$sql = "UPDATE `utenti` SET `email` = '$email',`password` = '$password',`avatar` = '$avatar' WHERE id = '$id'";
a così:
$sql = "UPDATE `utenti` SET `email` = '$email',`password` = '$password',`avatar` = '$avatar' WHERE id = '1'";
cioè l'id di un utente... e si modifica alla perfezione.. ma così se gli altri entrano nel loro pannello utente e modificano per esempio l'email modificano quella dell utente ID=1....
come devo modificare i codici per far si che ogni utente modifichi la loro email usando l'id della loro pagina... cioè ognuno il loro ID..?
HELP pls