Скажите как обычно делают UPDATE полей таблицы.
Тоесть как построить в PHP форму редактирования?
Тоесть например я вижу записи, щёлкаю по ней (а дальше обЪясните)
и должна эта запись отображаться в textarea или как? Чтобы редактировать.
Тоесть надо передавать параметр, да?
Желательно с примером кода.
Здравствуйте, chery, Вы писали:
f_update_user.php
<html>
<head>
<link rel=stylesheet href="style.css" type="text/css">
<title>update user</title>
</head>
<body>
<?php
import_request_variables("GP");
require 'settings.php';
if (($language!="en")&&($language!="ru"))
{
$language = "en";
}
print "<h2>".$str_update_user[$language]."</h2>";
if ($message != "")
{
print "<h4> ".$message." </h4>";
}
print "<table align=center class=\"forummessage\">";
$dbconnection = mysql_connect($dbserver,$dbuser,$dbpassword);
mysql_select_db($dbdatabase,$dbconnection);
$result = mysql_query("SELECT * FROM forum_users WHERE ( user_name = '".$user_name."' )",$dbconnection);
$user = mysql_fetch_array($result, MYSQL_ASSOC);
mysql_close($dbconnection);
print "<form action=\"update_user.php?language=".$language."&id=".$user["id"]."&return=".rawurlencode($return)."\" method=\"post\">";
print "<table align=center>";
print "<tr><td class=\"forumtopic\">".$str_user_name[$language]."</td><td><input type=text name=\"user_name\" value=\"".$user["user_name"]."\" size=64></td></tr>";
print "<tr><td class=\"forumtopic\">".$str_password[$language]."</td><td><input type=password name=\"password1\" value=\"".$user["password"]."\" size=64></td></tr>";
print "<tr><td class=\"forumtopic\">".$str_retype_password[$language]."</td><td><input type=password name=\"password2\" value=\"".$user["password"]."\" size=64></td></tr>";
print "<tr><td class=\"forumtopic\">".$str_real_name[$language]."</td><td><input type=text name=\"real_name\" value=\"".$user["real_name"]."\" size=64></td></tr>";
print "<tr><td class=\"forumtopic\">".$str_email[$language]."</td><td><input type=text name=\"email\" value=\"".$user["email"]."\" size=64></td></tr>";
print "<tr><td class=\"forumtopic\">".$str_website[$language]."</td><td><input type=text name=\"website\" value=\"".$user["website"]."\" size=64></td></tr>";
print "<tr><td class=\"forumtopic\">".$str_signature[$language]."</td><td><input type=text name=\"signature\" value=\"".rawurldecode($user["signature"])."\" size=64></td></tr>";
print "<tr><td class=\"forumtopic\">".$str_messages_on_page[$language]."</td><td><select name=\"messages_on_page\">";
for ($i = 5; $i <= 100; $i += 5)
{
if ($i == $user["messages_on_page"])
{
print "<option value=\"".$i."\" selected>".$i;
}
else
{
print "<option value=\"".$i."\">".$i;
}
}
print "</select></td></tr>";
if ($user["duplicate_messages_by_email"] == 1)
{
print "<tr><td class=\"forumtopic\">".$str_duplicate_messages_by_email[$language]."</td><td><select name=\"duplicate_messages_by_email\"><option value=\"0\">".$str_no[$language]."<option value=\"1\" selected>".$str_yes[$language]."</select></td></tr>";
}
else
{
print "<tr><td class=\"forumtopic\">".$str_duplicate_messages_by_email[$language]."</td><td><select name=\"duplicate_messages_by_email\"><option value=\"0\" selected>".$str_no[$language]."<option value=\"1\">".$str_yes[$language]."</select></td></tr>";
}
print "<tr><td class=\"forumtopic\">".$str_stay_logged_in[$language]."</td><td><select name=\"stay_logged_in\">";
for ($i = 5; $i <= 120; $i += 5)
{
if ($i*60 == $user["stay_logged_in"])
{
print "<option value=\"".($i*60)."\" selected>".$i;
}
else
{
print "<option value=\"".($i*60)."\">".$i;
}
}
print "</select></td></tr>";
print "</table><br>";
print "<center><a class=\"forumtopic\" href=\"f_delete_user.php?language=".$language."\">".$str_delete_user[$language]." ".$user["user_name"]."</a></center>";
print "<br><center><input type=submit value=\"".$str_update_user[$language]."\"></center>";
print "</form>";
print "<center><a class=\"forumtopic\" href=\"forum.php?language=".$language."\">".$str_back[$language]."</a></center>";
?>
</body>
</html>
update_user.php
<?php
import_request_variables("GP");
require 'settings.php';
if (($language!="en")&&($language!="ru"))
{
$language = "en";
}
if ($user_name == "")
{
header("Location: f_add_user.php?language=".$language."&user_name=".$user_name."&real_name=".$real_name."&email=".$email."&website=".$website."&signature=".$signature."&message=".rawurlencode($str_please_type_user_name[$language]));
die;
}
if ($password1 != $password2)
{
header("Location: f_add_user.php?language=".$language."&user_name=".$user_name."&real_name=".$real_name."&email=".$email."&website=".$website."&signature=".$signature."&message=".rawurlencode($str_passwords_does_not_match[$language]));
die;
}
$dbconnection = mysql_connect($dbserver,$dbuser,$dbpassword);
mysql_select_db($dbdatabase,$dbconnection);
mysql_query("UPDATE forum_users SET user_name = '".$user_name."', password = '".$password1."', real_name = '".$real_name."', email = '".$email."', website = '".$website."', signature = '".$signature."', messages_on_page = ".$messages_on_page.", duplicate_messages_by_email = ".$duplicate_messages_by_email.", stay_logged_in = ".$stay_logged_in." WHERE ( id = ".$id." )",$dbconnection);
mysql_close($dbconnection);
header("Location: f_update_user.php?language=".$language."&user_name=".$user_name."&return=".rawurlencode($return));
?>
settings.php
<?php
$dbserver = "mysql.sourceforge.net";
$dbdatabase = "****";
$dbuser = "****";
$dbpassword = "******";
$user_name_length = 32;
$password_length = 32;
$real_name_length = 64;
$email_length = 255;
$website_length = 255;
$signature_length = 64;
$topic_length = 64;
$message_length = 255;
$str_back = array("en" => "back","ru" => "назад");
$str_add_user = array("en" => "add user","ru" => "добавить пользователя");
$str_delete_user = array("en" => "delete user","ru" => "удалить пользователя");
$str_view_user = array("en" => "view user's profile","ru" => "просмотр профиля пользователя");
$str_update_user = array("en" => "update user's profile","ru" => "обновить профиль пользователя");
$str_login = array("en" => "login","ru" => "вход");
$str_logout = array("en" => "logout","ru" => "выход");
$str_add_message = array("en" => "add message","ru" => "добавить сообщение");
$str_language = array("en" => "russian (cp-1251)","ru" => "english");
$str_add_thread = array("en" => "add thread","ru" => "добавить нить");
$str_first_page = array("en" => "first page","ru" => "первая страница");
$str_previous_page = array("en" => "previous page","ru" => "предыдущая страница");
$str_refresh = array("en" => "refresh","ru" => "обновить");
$str_next_page = array("en" => "next page","ru" => "следующая страница");
$str_topic = array("en" => "topic","ru" => "тема");
$str_reply = array("en" => "reply","ru" => "ответить");
$str_posted_by = array("en" => "posted by","ru" => "послано");
$str_posted_at = array("en" => "posted at","ru" => "послано в");
$str_last_reply_by = array("en" => "last reply by","ru" => "последний ответ послан");
$str_last_reply_at = array("en" => "last reply at","ru" => "последний ответ послан в");
$str_january = array("en" => "January","ru" => "Январь");
$str_february = array("en" => "February","ru" => "Февраль");
$str_mart = array("en" => "Mart","ru" => "Март");
$str_april = array("en" => "April","ru" => "Апрель");
$str_may = array("en" => "May","ru" => "Май");
$str_june = array("en" => "June","ru" => "Июнь");
$str_july = array("en" => "July","ru" => "Июль");
$str_august = array("en" => "August","ru" => "Август");
$str_september = array("en" => "September","ru" => "Сентябрь");
$str_october = array("en" => "October","ru" => "Октябрь");
$str_november = array("en" => "November","ru" => "Ноябрь");
$str_december = array("en" => "December","ru" => "Декабрь");
$str_user_name = array("en" => "user name","ru" => "имя пользователя");
$str_password = array("en" => "password","ru" => "пароль");
$str_retype_password = array("en" => "retype password","ru" => "повторите пароль");
$str_real_name = array("en" => "real name","ru" => "настоящее имя");
$str_email = array("en" => "e-mail","ru" => "электронная почта");
$str_website = array("en" => "web-site","ru" => "веб-сайт");
$str_signature = array("en" => "signature","ru" => "подпись");
$str_messages_on_page = array("en" => "messages_on_page","ru" => "сообщений на странице");
$str_stay_logged_in = array("en" => "stay logged in (min)","ru" => "оставаться в системе (мин)");
$str_duplicate_messages_by_email = array("en" => "duplicate messages by e-mail","ru" => "дублировать сообщения по электронной почте");
$str_message = array("en" => "message","ru" => "сообщение");
$str_anonimous = array("en" => "anonimous","ru" => "аноним");
$str_invalid_user_name_password = array("en" => "invalid user name and/or password","ru" => "неправильные имя пользователя и/или пароль");
$str_you_are_currently_logged_in_as = array("en" => "you are currently logged in as","ru" => "вы вошли в систему как");
$str_please_type_user_name = array("en" => "please type user name","ru" => "пожалуйста введите имя пользователя");
$str_passwords_does_not_match = array("en" => "passwords does not match","ru" => "пароли не совпадают");
$str_user_name_already_registred = array("en" => "user name already registred","ru" => "имя пользователя уже заригистрированно");
$str_yes = array("en" => "yes","ru" => "да");
$str_no = array("en" => "no","ru" => "нет");
$str_no_replies = array("en" => "no replies","ru" => "нет ответов");
$str_user_was_deleted = array("en" => "user was deleted","ru" => "пользователь был удалён");
$str_subscribe_unsubscribe = array("en" => "subscribe/unsubscribe","ru" => "подписаться/отписаться");
$str_do_you_want_to_subscribe = array("en" => "do you want to subscribe to replies to this message and all it's thread?","ru" => "вы хотите пописаться на ответы на это сообщение и всю его нить?");
$str_you_can_not_subscribe = array("en" => "you can not subscribe/unsubscribe if you are not logged in","ru" => "вы не можете подписываться/отписываться если вы не вошли в систему");
$str_you_are_subscribed = array("en" => "you are subscribed","ru" => "вы подписаны");
$str_you_are_not_subscribed = array("en" => "you are not subscribed","ru" => "вы не подписаны");
$str_ = array("en" => "","ru" => "");
?>