[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: если переменная УСТАНОВЛЕНА-добавить пользователя
vagif
у меня такой скрипт-
mysql_connect("localhost", "root", "");


mysql_select_db ("vagif");
if($a=$_GET['name']){echo "Пользователь добавлен.";}
$b=$_GET['surname'];
if(isset($a)&&isset($b)){
$query = "INSERT INTO users VALUES (NULL,'$a','$b')";

$result=mysql_query($query);


}
else{echo "Запоните поля!!!";}

там должно писать "Запоните поля!!!" если если имя и фамилия пусты.там у меня пользователи добавляются при любом варианте.имя и фамилия пусто!как сделать правильно,чтобы если имя и фамилия не написаны,то не добавлять их?



Спустя 18 минут, 24 секунды (26.06.2010 - 22:34) Lenarfate написал(а):
if(!$name && !$surname)
{
//то низя))
}

Спустя 36 минут, 36 секунд (26.06.2010 - 23:10) Lenarfate написал(а):
на самом деле 90% времени программиста уходит на поиск ошибки.в этом и суть. иногда просто нужно отдохнуть часок, заняться чем-то другим.бывает желание бросить.но если ты бросишь, на фига тогда тратил свое время?))как-то так вот)

Спустя 7 минут, 6 секунд (26.06.2010 - 23:17) vagif написал(а):
я понимаю,просто иногда все очень портится,настроение фиговое,и человек печалится.

Спустя 3 часа, 16 минут, 48 секунд (27.06.2010 - 02:34) qpayct написал(а):
судя по подписи вам пора занятся столярным делом(сколачивать себе гроб) laugh.gif

Спустя 8 минут, 49 секунд (27.06.2010 - 02:43) Winston написал(а):
Так ?
mysql_connect("localhost", "root", "");
mysql_select_db ("vagif");

$a = !empty($_GET['name']) ? $_GET['name'] : NULL;
$b = !empty($_GET['surname']) ? $_GET['surname'] : NULL;

if ($_GET['go'] && $a && $b)
{
$query = "INSERT INTO `users` VALUES (NULL,'". $a ."','". $b ."')";
$result=mysql_query($query);
}
elseif ($_GET['go'] && (!$a || !$b))
echo "Запоните поля!!!";

Спустя 3 часа, 6 минут, 22 секунды (27.06.2010 - 05:49) Basili4 написал(а):
vagif
У тебя дыркы в скрипте для XSS атаки $a=$_GET['name'] и $b=$_GET['surname']; значения перменых не обрабатываюся вот смотри если туда запихать js скрпт то.

он как есть попадет в базу. если ты позже захоше сказать "Привет" из базы потянешь имя поьзователя то у тебя исполнится скрипт проверь. при регитсрации пользователя впиши в поле name
<script> alert(11111)</script> и ты увидешь результат работы скрипта.

Спустя 3 часа, 21 минута, 9 секунд (27.06.2010 - 09:10) vagif написал(а):
ok,спасибо

Спустя 23 минуты, 41 секунда (27.06.2010 - 09:34) vagif написал(а):
basili4,а что это за js?при обновлении страницы пользователь всетаки добавляется,а js не помогает.

Спустя 8 минут, 23 секунды (27.06.2010 - 09:42) vagif написал(а):
и как использовать функцию unset?она должна разрушать переменную.я её использую,чтобы при обновлении переменная онулировалась.и когда переменная пуста,то она не добавляется. а у меня при обновлении, переменная не разрушается,добавляется тот же пользователь.

Спустя 10 часов, 46 минут, 10 секунд (27.06.2010 - 20:29) tomash написал(а):
vagif
unset убивает переменную в области видимости скрипта, а переменная приходит с клиента! А я так понял у тебя повторно отправляется запрос, если нажать F5? Изпользуй header(location: ).

Спустя 1 час, 49 секунд (27.06.2010 - 21:29) vagif написал(а):
да,при нажатии f5,пользователь повторно добавляется.а где именно нужно header использовать?если её написать в скрипт,то добавление контакта совсем не будет.не так ли?то есть переменная не отправится?или добавить её в конец???

Спустя 2 минуты, 35 секунд (27.06.2010 - 21:32) tomash написал(а):
vagif
После того как логика скрипта отработала и добавила все куда нужно! Просто сделать переход на эту же страницу!

Спустя 1 минута, 34 секунды (27.06.2010 - 21:34) vagif написал(а):
а,спасибо.побробую))

Спустя 11 минут, 33 секунды (27.06.2010 - 21:45) vagif написал(а):
айда!почему все так трудно?утром все работало,сейчас не показывает пользователей.можете проверить код?у меня там в mysql базе добавляются пользователи,а в таблице один только,старый,не добавляются.хотя я уже удалил старого пользователя.уже футбол начался,а я ,,,ех!
<?
mysql_connect("localhost", "root", "");


mysql_select_db ("vagif");

$sql="SELECT * FROM `users`";
$result=mysql_query($sql) or die (mysql_error());
echo "<table border=1>";echo "<tr>";
echo "<td>";echo "ID";
echo "</td>";
echo "<td>";echo "Name";
echo "</td>";
echo "<td>";echo "Surname";
echo "</td>";echo "</tr>";
echo "<tr>";
while($row = mysql_fetch_array($result)){


echo "<td>";echo $row[ID];
echo "</td>";
echo "<td>";echo $row[Name];
echo "</td>";
echo "<td>";echo $row[Surname];
echo "</td>";echo "</tr>";



}
echo "</table>";

?>

Спустя 3 минуты, 42 секунды (27.06.2010 - 21:49) vagif написал(а):
щас нашол!!!я добавляю пользователя,перехожу на страницу таблицы,там старое.нажимаю f5,и все ок.только почему каждый раз нажимать F5?

Спустя 10 минут, 6 секунд (27.06.2010 - 21:59) tomash написал(а):
vagif
В принципе код рабочий))) Кавычки добавить ($row[Name]), для заголовков столбцов таблицы лучше, конечно, использовать <th></th>. Вместо mysql_fetch_array используйте mysql_fetch_assoc или mysql_fetch_array($result, MYSQLI_ASSOC)

А насчет неправильной выборки из БД, Вы точно к нужной базе подключились, к нужной таблице?

Спустя 2 минуты, 1 секунда (27.06.2010 - 22:01) tomash написал(а):
vagif

Потому что когда вы добавляете пользователя, вы не выполняете скрипт отбора из БД заново, наверное))

Спустя 1 минута, 20 секунд (27.06.2010 - 22:02) vagif написал(а):
да,все норм.я щас проверил,после f5,вижу пользователей.а без обновления -старое.

Спустя 1 минута, 21 секунда (27.06.2010 - 22:04) tomash написал(а):
Как у Вас это все в коде?


_____________
хороший программист должен знать-он тоже когда-то ничего не знал.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.