Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: Php скриптик  (Прочитано 648 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн Jincer

  • Автор темы
  • Новичок
  • *
  • Сообщений: 22
    • Просмотр профиля
Php скриптик
« : 13 Мая 2010, 19:44:08 »
<form action="upload.php" method="POST">
<input type="text" name="tit"><br>
<input type="text" name="short"><br>
<input type="text" name="ful"><br>

<?
include ("config.php");
$comm_radio="SELECT * FROM main";
$query_radio=mysql_query($comm_radio);
while(list($id_add,$name_add,$link_add)=mysql_fetch_array($query_radio))
{
echo "<input type="radio" name="radiocheck" value="$link_add">$name_add<br>";
}

$comm_add="INSERT INTO news (name,cor,ful,target) VALUES (".$_POST['tit'].",".$_POST['short'].",".$_POST['ful'].",".$_POST['radiocheck'].")";
$query_add=mysql_query($comm_add);
if($query_add)
{
echo"Lesson add";
}
//echo $_POST['radiocheck'];
?>
<input type="submit" value="Create">
</form>
Помогите плиз.
Скрипт должен добавить новость в бд но он не пашет(что б его). Парюсь уже 3 день.
config.php -проверено, все верно


Пользователь решил продолжить мысль 13 Мая 2010, 20:30:40:
Все спасибо  :P я разобралсо=)
« Последнее редактирование: 13 Мая 2010, 20:30:40 от Jincer »

Оффлайн vanish

  • Любитель
  • *
  • Сообщений: 70
  • Life Is Good
    • Просмотр профиля
Re: Php скриптик
« Ответ #1 : 14 Мая 2010, 01:00:35 »
вместо
while(list($id_add,$name_add,$link_add)=mysql_fetch_array($query_radio))
{
echo "<input type="radio" name="radiocheck" value="$link_add">$name_add<br>";
}
попробуй
while($row = mysql_fetch_assoc($query_radio)(
{
echo "<input type="radio" name="radiocheck" value="$row['link_add']">".$row['name_add']."<br>";
}
Но не факт. А вообще опиши типы полей базы данных хотя бы. А то здесь телепатов нету.

Пользователь решил продолжить мысль 13 Мая 2010, 19:02:20:
И попробуй не встраить обработку запрос к базе в html. c таким кодом потом не реально работать

учитесь код обрамлять соответствующими тэгами
__________________
Владимир Николаевич
« Последнее редактирование: 14 Мая 2010, 08:46:29 от Владимир Николаевич »

Оффлайн k33

  • Новичок
  • *
  • Сообщений: 16
    • Просмотр профиля
Re: Php скриптик
« Ответ #2 : 16 Мая 2010, 01:46:13 »
Jincer
Если Вы недавно начали писать на PHP, очень рекомендую почитать об sql-инъекциях, xss-атаках и прочих причинах не делать вот так:
"INSERT INTO news (name,cor,ful,target) VALUES (".$_POST['tit'].",".$_POST['short'].",".$_POST['ful'].",".$_POST['radiocheck'].")";
Необходимо либо оббегать весь массив $_POST ($_GET и $_COOKIES в придачу), либо чистить хотя бы с помощью addslashes($_POST['your_var']) прямо в строке запроса.

P.S. конструкция list() считается устаревшей. Поробуйте использовать $row = mysql_fetch_assoc(), как предложил vanish - лишит проблем с расширением БД в дальнейшем.
Ci vis pacem, para bellum.

 

Страница сгенерирована за 0.046 секунд. Запросов: 25.