waldicom
12.08.2013 - 19:23
Цитата (Michael @ 12.08.2013 - 15:22) |
Так что свой вариант так и не покажешь?
|
Так вроде Вася код показал уже, а именно isset && is_array && in_array ... Или не?
Я, правда использую !empty && is_array && in_array, но сути дела это не мянет.
_____________
Свои мозги еще никто не отменял.
Телепатов нету.
Спор о синтаксисе?
$res = mysql_query('SELEЛT id ... WHERE id>1000');
while ($row = mysql_fetch_assoc($res)) {
$a[] = $row['id'];
}
Сейчас нотис выбросит вторая строка. Один и тот же код может по разному себя вести, в зависимости от того куда его подключить. Либо обрабатывать все случаи возможной остановки скрипта и выводить соответствующие уведомления, либо ерундой не страдать.
Судя по коду все равно в какой строке скрипт не сработает. А дополнительное условие может быть полезно для тестирования, ведь любая необработанная остановка скрипта может доставить кучу гемора. И утверждать что оно лишнее может только автор.
$sess = mysqli_connect($a, $b, $c, $pd);
mysqli_query($sess, "set names cp1251");
$sess910 = mysqli_query($sess, "select * from sess909");
while($sess911=mysqli_fetch_assoc($sess910)
{
$sess912[]="$sess911[1]";
}
mysqli_close($sess);
$sess912[]="";
if(in_array("значение", $sess912))
Ваше мнение, что-то изменить?
_____________
Принимаю заказы, писать в ЛС
Игорь_Vasinsky
13.08.2013 - 11:35
Цитата |
while($sess911=mysqli_fetch_assoc($sess910) { $sess912[]="$sess911[richesse20151]"; } |
оберни
if(mysqli_num_rows($sess910)){
while($sess911=mysqli_fetch_assoc($sess910)
{
$sess912[]="$sess911[richesse20151]";
}
}
ну и названия у переменныхх.... чёрт ногу сломает
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Michael
13.08.2013 - 11:36
Цитата (Медведь) |
Ваше мнение, что-то изменить? |
Вот это - не надо:
$sess912[]="";
перед циклом напиши:
$sess912 = array();
, а то не сильно красиво выглядит, хотя и работает конечно. Это больше как мины в коде.
_____________
There never was a struggle in the soul of a good man that was not hard
Игорь_Vasinsky
13.08.2013 - 11:37
+
Цитата |
if(in_array("значение", $sess912)) |
$sess912 = isset($sess912) ? $sess912 : array();
if(in_array("значение", $sess912))
это выкинь
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Игорь_Vasinsky
13.08.2013 - 11:37
или как у Михи
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Michael
13.08.2013 - 11:42
Цитата (Игорь_Vasinsky) |
оберни |
смысла нет оборачивать в блок условия. Блок цикла - это такой же блок и также есть в нем условие. Это лишний код, т.к. без него работает точно также как с ним. Блока то с else у тебя нет.
_____________
There never was a struggle in the soul of a good man that was not hard
DedMorozzz
13.08.2013 - 11:45
Кодировка очень интересная
Цитата |
"set names cp1251" |
А с чем связан выбор именно этой кодировки, а не утф8?
_____________
Если не говорить пользователям, что Linux это "Сложно и страшно", то им совершенно всё равно, в чём не разбираться
Игорь_Vasinsky
13.08.2013 - 11:48
Michael
Цитата |
$sess910 = mysqli_query($sess, "select * from sess909"); while($sess911=mysqli_fetch_assoc($sess910) |
если запрос вернёт false - то в след строке будет warning
mysqli_fetch_assoc - не работает с булевым циклом, типом тока с ресурсом
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Michael
13.08.2013 - 11:50
Цитата (Игорь_Vasinsky @ 13.08.2013 - 09:37) |
$sess912 = isset($sess912) ? $sess912 : array(); if(in_array("значение", $sess912)) |
этот вариант тоже не предполагает мешать empty с in_array, как многоуважаемый твин очень хочет.
Вариант с дополнительной проверкой. Но имхо лучше чем с empty.
Цитата (Игорь_Vasinsky) |
если запрос вернёт false |
Он не вернет false, запрос то без ошибок. Он вернет ресурс на пустой результат.
_____________
There never was a struggle in the soul of a good man that was not hard
А зачем вообще так извращаться? Вот так почему не?
<?php
$sess910 = mysqli_query($sess, "select count(*) as `cnt` from sess909 where `1` = 'значение'");
$sess911 = mysqli_fetch_assoc($sess910);
if(!empty($sess911['cnt'])){
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
Игорь_Vasinsky
13.08.2013 - 11:53
Цитата |
Он не вернет false, запрос то без ошибок |
у кого как
twin
есть стандартные приёмы, которые практиковались долгие годы, не вижу смысла от них отказываться.
запрос
что вернул
если вернул
цикл
если не вернул
создать пустой массив (например) или не создавать(на другой пример)
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Игорь_Vasinsky
Цитата |
есть стандартные приёмы, которые практиковались долгие годы, не вижу смысла от них отказываться. |
Вот именно! На кой эти извраты, когда все делается стандартными методами?
_____________
Если вам недостаточно собственных заблуждений, можно расширить их мнениями экспертов.Нужно уважать мнение оппонета. Ведь заблуждаться - его святое право.Настаивал, настаиваю и буду настаивать на своем. На кедровых орешках.
Игорь_Vasinsky
13.08.2013 - 11:57
ну просто - есть правила которым учились здесь, есть правила которым учились не здесь
всегда же есть несколько правых решений, не обязательно одно.
просто что то привычней и на глаз сразу - видя абзац кода - мозг на уровне инстинкта понимает что это без доп изучения кода
_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
Быстрый ответ:
Powered by dgreen
Здесь расположена полная версия этой страницы.