Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Вытянуть название из select (https://javascript.ru/forum/misc/70704-vytyanut-nazvanie-iz-select.html)

Dan922 30.09.2017 12:47

Я не в укор вам .
Привел к integer.
Разницы нет как называть переменную, если в нее все равно "падает" ресурс. Можно и $result.

Dan922 30.09.2017 13:03

Все, супер у меня получилось!

Разобрался, понял где была ошибка.
Не нужно было приводить к integer.
Т.к. эта переменная изначально была определена как integer.
$result = mysql_query("SELECT `name` FROM `city` WHERE `city_id` = $city");

if(mysql_num_rows($result)) {
     $namer = mysql_fetch_row($result);
     $namer=$namer[0];
} else {
   
   
}


Спасибо за помощь!

laimas 30.09.2017 13:29

Цитата:

Сообщение от Dan922
Т.к. эта переменная изначально была определена как integer.

Что?! И еще раз, и запомните хорошо - все что приходит POST/GET запросами, это строки! А приведение integer к integer не приведет к ее "порче", а тем более не сделает из нее NULL.

echo (int)25; //как была 25 объявлена как integer, так ею и останется
//а вот строковое представление 25 станет числом 25
$str = '25';
echo gettype($str) . '<br>';
$str = (int)'25';
echo gettype($str);
//а вот так вашу базу как орех грецкий
//вы уверены, что форма вам уже числа шлет, думаете что город под ID 230 запрашивают
//а на самом деле ваши "дыры прощупывают"  
$val = '230 union select "1", login, passwd ...';
//а вот так не прокатит
$val = (int)$val;
echo $val;


Вы не разобравшись в своих багах несете ахинею. Но это не беда, гораздо хуже, что вы не проверяете и не фильтруете входные данные.

Dan922 30.09.2017 13:35

Да я поставил фильтра.
Все нормально.

laimas 30.09.2017 13:45

Цитата:

Сообщение от Dan922
Да я поставил фильтра.
Все нормально.

Сомнительно.


Часовой пояс GMT +3, время: 11:49.