насильственное обьявление переменной

dast

Новичок
насильственное обьявление переменной

задача проста...

дело в том что от формы передаеться куча переменных вида nomer_... где "..." число. максимальное значение известно.

у этоих переменных есть значение...

нужно сделать проверку этих переменных на пустое значение...

PHP:
<?  if (nomer_... == 0) echo "nomer_... пуста";  ?>
подскажите как это организовать? вся проблема в синтаксисе...
 

betik

Новичок
лучше не nomer_...
а nomer[] в форме называть...

а проверка foreach ($nomer as $k=>$v)
{
if(empty($v)) echo "nomer $k empty";
}
 

donflash

Вареник клуба
Короче говоря, пересылать данные не в форме переменной, а в форме массива... :)
 

zarus

Хитрожопый макак
Насилие над переменными - это сильная тема :)
 

phprus

Moderator
Команда форума
Cardinal
Мало ли какие у человека могут быть причины не делать массив
Если ты такой умный, то предложи хоть одну РЕАЛЬНО обоснованную причину не использовать массивы. Незнание про существование массивов - это не достаточно веская причина.
 

Андрейка

Senior pomidor developer
phprus
да ваши РЕАЛЬНЫЕ ОБОСНОВАНИЯ в том же районе находяцца - под плинтусом
 

phprus

Moderator
Команда форума
Андрейка
Я вообщето имел ввиду что незнание про массивы это НЕ ЕСТЬ реальное образование. Так что не надо тут писать непонятно что не разобравшись в том, о чем пишите.
 

Андрейка

Senior pomidor developer
phprus
ну допустим я знаю про массивы.. а еще я знаю идиоццкий скрипт, в котором используюцца всякие nomer_0 вместо массивов.. и вытаскиваются все эти номера очень страшным способом - strpos по $_REQUEST .. вот хочу написать авторам скрипта, что они нифика в этой жизни не понимают.. помоги с аргументацией плиз
 

HraKK

Мудак
Команда форума
Скорость. Читабельность кода. Надежность. Юзабельность.

По любому пункту думаю сам приведешь аргументацию.
 

Андрейка

Senior pomidor developer
HraKK
т.е.
PHP:
for ($i=0; $i<20; ++$i) {
   echo $_POST['nomer_'.$i]?$_POST['nomer_'.$i]:'пусто';
}
заведомо медленнее, нечитабельнее, ненадежнее и еще не чего-тонепонятное ?
 

hermit_refined

Отшельник
Андрейка, вы иногда цепляетесь совершенно не по делу.
Будто сами не понимаете, что убеждать каждого такого гения в том, что он не прав, никаких нервов ни у кого не хватит.
 

HraKK

Мудак
Команда форума
не заведомо. Это не гадание на кофейной гуще.
Есть четкие факты по всем этим пунктам.

-~{}~ 07.12.06 18:37:

hermit_refined
Вы хотите сказать что я не прав?
 

hermit_refined

Отшельник
HraKK
не, я про то, что ни вы, ни кто-то другой, не должен ничего доказывать Cardinal и ему подобным.
ибо бесполезно, или по крайней мере - заведомо неэффективно с т.зр. усилия/результат.
 

donflash

Вареник клуба
Вам уже дали понять, что надо передавать данные в форме массива, что ещё не понятно?
 

Андрейка

Senior pomidor developer
hermit_refined
вот устроюсь бальшой фирма программист, буду работать программы.. подойдет ко мне геолога и спросит - а ты почему тут эта хрень написал, а я ему - а мне форума дали понять однако
так чтоли?

HraKK
ну вот и приведите факты... я понятия не имею ни о уровне квалификации ни о умственном и эмоциональном состоянии отвечающего.. мне ему наслово верить?
 

HraKK

Мудак
Команда форума
Андрейка

Скорость
PHP:
for ($i=0; $i<20; ++$i) { 
   echo $_POST['nomer_'.$i]?$_POST['nomer_'.$i]:'пусто'; 
}
Тут ты перебераешь 20 переменных с проверкой на существование.
при foreach ты переберешь если не меньше, то столько же но без проверки на существование.

Читабельность
PHP:
foreach($_POST['nomer'] as $nomer)
{
    echo $nomer;
}
Думаю и так понятно.

Надежность. А что если я передам 21 элемент?
 

Андрейка

Senior pomidor developer
HraKK
А что если я передам 21 элемент?
боюсь, что об этом прийдется думать в твоем варианте.. действительно, а что будет если я передам 21ый (при максимальное значение известно©==20) ?? надежность рулит

по читабельности.. ок, согласен.. тока чтоб мы были на равных убери мою строку в for и помести вместо нее echo $i

нужно сделать проверку этих переменных на пустое значение
не вижу проверки.. перебор вижу, проверки нет
 
Сверху