Форум программистов «Весельчак У»
  *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

  • Рекомендуем проверить настройки временной зоны в вашем профиле (страница "Внешний вид форума", пункт "Часовой пояс:").
  • У нас больше нет рассылок. Если вам приходят письма от наших бывших рассылок mail.ru и subscribe.ru, то знайте, что это не мы рассылаем.
   Начало  
Наши сайты
Помощь Поиск Календарь Почта Войти Регистрация  
 
Страниц: [1]   Вниз
  Печать  
Автор Тема: {PHP} Редактирование страницы.  (Прочитано 14607 раз)
0 Пользователей и 1 Гость смотрят эту тему.
Lunik
Постоялец

ru
Offline Offline

« : 29-10-2009 11:39 » 

Подскажите, пожалуйста.
Есть страница, которая выводит личную информацию о пользователе.
Как можно реализовать, чтобы в этих же колонках можно было редактировать и записывать в БД.
Пытался, не получается.
Код:
<?
require('mysql.php');
$from=@$_GET['from'];
if ($from == "") $from = "0";
$uid = $_SESSION['uid'];
$query = "SELECT *
          FROM users
 WHERE id_user = $uid
";
$do = mysql_query($query);
$online_users=array();
for($x=0;($online_users[$x]=mysql_fetch_assoc($do));$x++);
$total_count=$x;
unset($online_users[count($online_users)-1]);
for($x=$from;$x<$from+100 && $x<count($online_users);$x++)
{
$name                 =   $online_users[$x]['name'];
$gorod          =   $online_users[$x]['gorod'];
$street          =   $online_users[$x]['street'];
$dom          =   $online_users[$x]['dom'];
$mail          =   $online_users[$x]['mail'];
$phone        =   $online_users[$x]['phone'];
$www            =   $online_users[$x]['www'];
$history            =   $online_users[$x]['history'];
$avatar            =   $online_users[$x]['avatar'];
}
?>
<table border="0" cellspacing="0" cellpadding="1" width="100%">  
  <tr>    
    <td colspan="2" >&nbsp;<b>Информация:</b></td>  
  </tr>  
  <tr>    
    <td >&nbsp;Название Фирмы</td>    
    <td >&nbsp;
      <input name="name" type="text" value="<? echo $name; ?>" ></td>  
  </tr>  
  <tr>    
    <td >&nbsp;Город</td>    
    <td >&nbsp;
      <input name="gorod" type="text" value="<? echo $gorod; ?>" ></td>  
  </tr>    
  <tr>    
    <td >&nbsp;Улица</td>    
    <td >&nbsp;
      <input name="street" type="text" value="<? echo $street; ?>" ></td>  
  </tr>  
  <tr>    
    <td >&nbsp;Дом</td>    
    <td >&nbsp;
      <input name="dom" type="text" value="<? echo $dom; ?>" ></td>  
  </tr>  
  <tr>    
    <td >&nbsp;Почта</td>    
    <td >&nbsp;
      <input name="mail" type="text" value="<? echo $mail; ?>" ></td>  
  </tr>  
  <tr>    
    <td >&nbsp;Телефон</td>    <td>&nbsp;
      <input name="phone" type="text" value="<? echo $phone; ?>" ></td>  
  </tr>    
  <tr>    
    <td >&nbsp;Сайт</td>    <td>&nbsp;
      <input name="www" type="text" value="<? echo $www; ?>" ></td>  
  </tr>  
  <tr>    
    <td >&nbsp;О себе</td>    
    <td >&nbsp;
<textarea name="history" cols="80" rows="10" ><? echo $history; ?></textarea></td>  
  </tr>
                </table>
              

Спасибо.
« Последнее редактирование: 29-10-2009 12:25 от Sel » Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #1 : 29-10-2009 11:54 » 

Скрипт весь?
добавить <form action="название скрипта обработающего запрос" method="GET|POST">
добавить input type="submit"


Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Lunik
Постоялец

ru
Offline Offline

« Ответ #2 : 29-10-2009 12:00 » 

Скрипт весь?
добавить <form action="название скрипта обработающего запрос" method="GET|POST">
добавить input type="submit"
Скрипт весь он работает на вывод инфо.
Дак вот чет не могу правельно составить запрос. Могешь помочь?



[/quote]
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #3 : 29-10-2009 12:09 » 

Код:
<form action="edit_info.php" method="get">
<table border="0" cellspacing="0" cellpadding="1" width="100%"> 
  <tr>   
    <td colspan="2" >&nbsp;<b>Информация:</b></td> 
  </tr> 
  <tr>   
    <td >&nbsp;Название Фирмы</td>   
    <td >&nbsp;
      <input name="name" type="text" value="<? echo $name; ?>" ></td> 
  </tr> 
  <tr>   
    <td >&nbsp;Город</td>   
    <td >&nbsp;
      <input name="gorod" type="text" value="<? echo $gorod; ?>" ></td> 
  </tr>   
  <tr>   
    <td >&nbsp;Улица</td>   
    <td >&nbsp;
      <input name="street" type="text" value="<? echo $street; ?>" ></td> 
  </tr> 
  <tr>   
    <td >&nbsp;Дом</td>   
    <td >&nbsp;
      <input name="dom" type="text" value="<? echo $dom; ?>" ></td> 
  </tr> 
  <tr>   
    <td >&nbsp;Почта</td>   
    <td >&nbsp;
      <input name="mail" type="text" value="<? echo $mail; ?>" ></td> 
  </tr> 
  <tr>   
    <td >&nbsp;Телефон</td>    <td>&nbsp;
      <input name="phone" type="text" value="<? echo $phone; ?>" ></td> 
  </tr>   
  <tr>   
    <td >&nbsp;Сайт</td>    <td>&nbsp;
      <input name="www" type="text" value="<? echo $www; ?>" ></td> 
  </tr> 
  <tr>   
    <td >&nbsp;О себе</td>   
    <td >&nbsp;
<textarea name="history" cols="80" rows="10" ><? echo $history; ?></textarea></td> 
  </tr>
<tr>
<td>
<input type="submit" value="отправить">
</td>
</tr>
                </table>
</form>
Код: (PHP) edit_info.php
echo $_GET['www'];
echo $_GET['phone'];
и т.д.
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Lunik
Постоялец

ru
Offline Offline

« Ответ #4 : 29-10-2009 12:26 » 

...

Нет, мне немного непонятен сам Sql запрос. Есть такое
Код:
$get_id = @$_GET['id'];
$sql = "UPDATE `users` SET `name` = '$name', `gorod` = '$gorod ', `mail` = '$mail ', `phone` = '$phone ', `street` = '$street', `dom` = '$dom  ', `www` = '$www', `history` = '$history' WHERE `users`.`id_user` = '$get_id' LIMIT 1;";
Но, по-моему, это вообще не так.
« Последнее редактирование: 29-10-2009 12:27 от Sel » Записан
Lunik
Постоялец

ru
Offline Offline

« Ответ #5 : 29-10-2009 12:40 » 

Или вот такое.
Код:
<?
if (@$_SESSION['admin'] >= "500")
      {
if ($_GET['act'] == 'users_dored')
{
$ttt      = $_GET['t'];
$name      = $_POST['name1'];
$gorod      = $_POST['gorod1'];
$street      = $_POST['street1'];
$dom      = $_POST['dom1'];
$mail      = $_POST['mail1'];
$phone      = $_POST['phone1'];
$www      = $_POST['www1'];
$history = $_POST['history1'];
$query = "UPDATE `users`
  SET
  `name` = '$name',
  `gorod` = '$gorod',
  `street` = '$street',
  `dom` = '$dom',
  `mail` = '$mail',
  `phone` = '$phone',
  `www` = '$www',
  `history` = '$history'
  WHERE
  `id_user` = '$ttt'";
$q = mysql_query($query);
if ($q)
{ echo "Записано";  } else { echo "Ошибка"; }
}
       } else { echo "<br><br>Админ чтоли?"; }
?>
Но у меня не работает. Пишит что Записано, а в БД изменений нет, где что накосячил?
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #6 : 29-10-2009 12:42 » 

что тебя смущает в строке запроса?

меня, например, Limit 1
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Lunik
Постоялец

ru
Offline Offline

« Ответ #7 : 29-10-2009 12:47 » 

что тебя смущает в строке запроса?

меня, например, Limit 1
$get_id = @$_GET['id'];
Так разве можно писать?
LIMIT меня тоже смушает.

Да и как этот запрос состыковать так сказать с тем что написал ты?
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #8 : 29-10-2009 12:50 » 

какой method в форме?
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Lunik
Постоялец

ru
Offline Offline

« Ответ #9 : 29-10-2009 12:53 » 

В моей форме самый первый вариант был
method="post"
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #10 : 29-10-2009 13:01 » 

а в каком месте ты создаешь подключение к базе и закрываешь его?
Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Lunik
Постоялец

ru
Offline Offline

« Ответ #11 : 29-10-2009 15:10 » 

Вот полность весь код и всес таницы:
Код:
<?
if (@$_GET['t'] == '') {
?>
<?
require('mysql.php');
$from=@$_GET['from'];
if ($from == "") $from = "0";
$uid = $_SESSION['uid'];
$query = "SELECT *
          FROM users
  WHERE id_user = $uid
";
$do = mysql_query($query);
$online_users=array();
for($x=0;($online_users[$x]=mysql_fetch_assoc($do));$x++);
$total_count=$x;
unset($online_users[count($online_users)-1]);
for($x=$from;$x<$from+100 && $x<count($online_users);$x++)
{
$name                 =   $online_users[$x]['name'];
$gorod          =   $online_users[$x]['gorod'];
$street          =   $online_users[$x]['street'];
$dom          =   $online_users[$x]['dom'];
$mail          =   $online_users[$x]['mail'];
$phone         =   $online_users[$x]['phone'];
$www             =   $online_users[$x]['www'];
$history             =   $online_users[$x]['history'];
$avatar             =   $online_users[$x]['avatar'];
}
?>
<?}?>
<form  action="?act=users_dored" method="get">
<table border="0" cellspacing="0" cellpadding="1" width="100%"> 
  <tr>   
    <td colspan="2" >&nbsp;<b>Информация:</b></td> 
  </tr> 
  <tr>   
    <td >&nbsp;Название Фирмы</td>   
    <td >&nbsp;
      <input name="name" type="text" value="<? echo $name; ?>" ></td> 
  </tr> 
  <tr>   
    <td >&nbsp;Город</td>   
    <td >&nbsp;
      <input name="gorod" type="text" value="<? echo $gorod; ?>" ></td> 
  </tr>   
  <tr>   
    <td >&nbsp;Улица</td>   
    <td >&nbsp;
      <input name="street" type="text" value="<? echo $street; ?>" ></td> 
  </tr> 
  <tr>   
    <td >&nbsp;Дом</td>   
    <td >&nbsp;
      <input name="dom" type="text" value="<? echo $dom; ?>" ></td> 
  </tr> 
  <tr>   
    <td >&nbsp;Почта</td>   
    <td >&nbsp;
      <input name="mail" type="text" value="<? echo $mail; ?>" ></td> 
  </tr> 
  <tr>   
    <td >&nbsp;Телефон</td>    <td>&nbsp;
      <input name="phone" type="text" value="<? echo $phone; ?>" ></td> 
  </tr>   
  <tr>   
    <td >&nbsp;Сайт</td>    <td>&nbsp;
      <input name="www" type="text" value="<? echo $www; ?>" ></td> 
  </tr> 
  <tr>   
    <td >&nbsp;О себе</td>   
    <td >&nbsp;
<textarea name="history" cols="80" rows="10" ><? echo $history; ?></textarea></td> 
  </tr>
                <tr>                                         
   <td >    &nbsp;
      <input type="submit" value="Загрузить" ></td>                                   
                </tr>
                </table>
                </form>

Вот users_dored.php
Код:
<?
if (@$_SESSION['admin'] >= "500")
      {
if ($_GET['act'] == 'users_dored')
{
$ttt      = $_GET['t'];
$name      = $_GET['name'];
$gorod      = $_GET['gorod'];
$street      = $_GET['street'];
$dom      = $_GET['dom'];
$mail      = $_GET['mail'];
$phone      = $_GET['phone'];
$www      = $_GET['www'];
$history = $_GET['history'];
$query = "UPDATE `users`
  SET
  `name` = '$name',
  `gorod` = '$gorod',
  `street` = '$street',
  `dom` = '$dom',
  `mail` = '$mail',
  `phone` = '$phone',
  `www` = '$www',
  `history` = '$history'
  WHERE
  `id_user` = '$ttt'";
$q = mysql_query($query);
if ($q)
{ echo "Записано";  } else { echo "Ошибка"; }
}
       } else { echo "<br><br>Админ чтоли?"; }
?>
Что я делаю не так? не работает(((
Записан
Sla
Команда клуба

ua
Offline Offline
Пол: Мужской

WWW
« Ответ #12 : 29-10-2009 15:28 » 

где у тебя  в форме поле t?


$ttt         = $_GET['t'];
echo $ttt;


<form  action="?act=users_dored&t=... подставь id_user ..."

Записан

Мы все учились понемногу... Чему-нибудь и как-нибудь.
Lunik
Постоялец

ru
Offline Offline

« Ответ #13 : 30-10-2009 10:29 » new

Все Спасибо. Разобрался Ошибка была в
$ttt         = $_GET['t'];
Записан
Страниц: [1]   Вверх
  Печать  
 

Powered by SMF 1.1.21 | SMF © 2015, Simple Machines