Показать сообщение отдельно
Миша NIF
the style of no style
Аватар для Миша NIF
Сообщения: 18,108
Регистрация: 23.09.2006
Откуда: ГЕРМАНИЯ
Старый пост, нажмите что бы добавить к себе блог 30 октября 2009, 10:44
ВКонтакте Отправить сообщение через twitter для Миша NIF
  #214 (ПС)
-Цитата от a.su.s Посмотреть сообщение
-Цитата от Cutthroat Посмотреть сообщение
-Цитата от Миша NIF Посмотреть сообщение

в студию, помогу чем смогу сегодня али завтра
короче я токо познаю пхп не судите строго
есть новостной блок,есть админка и там редактирование новости
вот эта страница и не пашет у меня

вроде все просто но загвоздка вот в чем

код(не смотри на объем-все просто вроде))

<?PHP
// если уровень доступа у пользователя 10
if ($auth->getAcc()=="10"){

$_GET['id'];
$id=$_GET['id'];

//выбираем нужное из нашей базы
$sql = "SELECT id_news , name_n , t_news, au_news , time_n FROM news_info WHERE id_news = '$id' LIMIT 0, 30";


$result = mysql_query($sql, $conn);

$rows = mysql_numrows($result);
$x=$rows-1;
$id=@mysql_result($result, $x) ;
$name=@mysql_result($result, $x,1);
$text=@mysql_result($result, $x,2);
$author=@mysql_result($result, $x,3);
$time=@mysql_result($result, $x,4);

if (isset($HTTP_POST_VARS['subn']) ){


$name=$_POST['name_v'];
$text=$_POST['text_v'];
// обновляем старые значения но новые
$sql = "UPDATE news_info SET name_n = '$name', t_news='$text' WHERE id_news ='$id' ";
mysql_query($sql) or die("Ошибка редактирования новости");

}
?>

</td></tr>
<table border="1" width="530" id="table1" height="141">
<tr>
<tr>
<td width="263"><? echo $name ?></td>
<td width="263">Разместил: <? echo $author ?> в <? echo $time ?></td>
</tr>
<tr>
<td colspan="2"><? echo $text ?></td>
</tr>

</tr>
</table>
<html>

<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<title>Редактирование новости </title>
</head>
<body>

<!-- Форма редактирования новости -->
<form method="POST" action="index.php?tr=editn">

Название новости
<p><input type="text" name="name_v" size="77" value="<? echo $name ?>"></p>

Текст новости
<p><textarea rows="12" name="text_v" cols="58"><? echo $text ?></textarea></p>



</table>
<input type="submit" name="subn" value="Отправить" >
</form>
</body>
</html>
<?
}


echo "v itoge SQL $sql ";
?>


так вот в чем фишка
когда я дела у определенной новости "редактировать" и перехожу на страницу редактирования то все ок,например вот запрос если вывести

SQL SELECT id_news , name_n , t_news, au_news , time_n FROM news_info WHERE id_news = '5'

id видет,все прекрасно

как пишу новые значения, названия новости и текста новости то
SQL UPDATE news_info SET name_n = 'new', t_news='new1' WHERE id_news =''
все ок ! только он не видит айди и поэтому в самом mysql в базе ничо не меняет
где тут ошибка знаю что просто не не пойму почему не пашет, типа он ищет айди в $_get но не находит $id=$_GET['id']; не помогает
В скрипте есть sql-инъекция. Он будет уязвим
Почитай про защиту от них.
http://ru.wikipedia.org/wiki/%D0%92%D0%BD%D0%B5%D0%B4%D1...0%B4%D0%B0

И лучше юзать (int) или mysql_real_escape_string.
$_GET['id']; — это вообще жесть)

http://forum.sources.ru/index.php?showtopic=220309
$_GET['user'] && $_GET['pw']

еше надо ...гетом кроме языка и страницы вообше нихуя не надо делать ....

offline
Ответить с цитированием