- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
Часть 1
=====================================
foreach ($_POST['massive'] as $key => $val)
{
@mysql_query("INSERT INTO table VALUES (NULL,'".$val."'");
}
======================================
Часть 2
======================================
if (!empty($_POST['massive'])/*&&is_array($_POST['massive']) для любителей пожестче=)*/)
{
//Так мы точно знаем что нам что-то передали(не выскочит нотис).
//Далее надо сформировать правильный запрос. Никогда, НИКОГДА нельзя делать кучу инсертов циклом, т.к. скорее всего это закончиться смертью сервера.
//А сделать как-нить так
foreach ($_POST['massive'] as $key => $val)
{
$query.="('".mysql_real_escape_string($val)."'),"; //Cделаем заготовку для запроса, попутно параметр экранируется, что бы злобные хакеры не подсунули нам кавычку и прочую гадость.
}
$query= 'INSERT INTO table VALUES'.substr($query, 0, -1).';';//Обрежем последнюю лишнюю запятую, и в итоге получим запрос вида INSERT INTO table VALUES (),(),()..();
if (!mysql_query($query)) //Скажу по секрету, что ставить собаку это моветон.
{
print "Упс, что-то сломалось";
print mysql_error();
}else {print "Вот и все"}
==========================================
Вобщем, увидел на одном форуме часть 1.
Будучи в хорошем настроении решил поправить. И Выдал часть 2, прямо вот в форуме. Думал отправить.. Но попахивает же, да?
Для начала: чоткие PHP-погромисты не юзают этот ваш бэйсиковский print.
У нас все свое, родное, крутое такое и дерзкое. Используйте echo, чтобы влиться в наши чоткие ряды.
На досуге погуглите разницу между: echo и print, одинарными кавычками и двойными.
А также - как форматировать код и писать условия. Узнайте, что такое конкатенкация, и как она помогает сокращать количество команд вывода.
Собака порой нужна, но тогда ОБЯЗАТЕЛЬНО нужно делать свою обертку для варнинга. Иначе рискуете битый час думать над тем, что же здесь не работает. А PHP будет молчать как партизан.
Про передачу массива методом Post...
Вы уверены, что нет другого выхода?
И зачем тогда спрашивать, если вы так умны?
По вашему коду не скажешь, что вы это все знаете.
И мне тоже порой приходится писать код в форме ответа, но говнистости коду это не придает, как ни странно.
даже не знаю, что Вам сказатьб
foreach ($_POST['massive'] as $val) {
$els[] = "('".mysql_real_escape_string($val)."')" ;
}
$query= 'INSERT INTO table VALUES'. implode(',',$els);
if (!mysql_query($query)) {
echo 'Упс, что-то сломалось' . mysql_error();
}else { echo 'Вот и все'';
}
}
так кашернее яхз...
2) Код нерабочий - комментарий не закрыт и опечатка в третьей снизу строке
3) Чем это кошернее?
А в кашруте кашрутов -- он вообще mysql_query содержать не может