2014-01-18 4 views
1

Как получить этот синтаксис? Действительно возникают проблемы ...Post Variable New Line

for($i = 1; $i <= $count; $i++) 
{ 
    $typeofunit = $_POST['typeofunit'.$i];} 
    $sql="INSERT INTO equips (typeofunit) 
    VALUES 
    ('$_POST[typeofunit]')"; **??** ('$_POST[$typeofunit]')"; **???** 
} 
+0

Цель вашего кода? – jingyu

+0

У меня в таблице используется скрипт для создания новой строки/таблицы. Необходимо отправить сообщение в mysql. – user2720970

ответ

2

Помещенный INSERT заявление за пределами вашего цикла, потому что вам это нужно только один раз. Затем добавьте его во время каждой итерации цикла. Наконец, удалите последнюю запятую из запроса, которая приведет к синтаксической ошибке.

$sql="INSERT INTO equips (typeofunit) VALUES"; 
for($i = 1; $i <= $count; $i++) 
{ 
    $typeofunit = $_POST['typeofunit'.$i];} 
    $sql .= "('" . mysql_real_escape_string($_POST['typeofunit'.$i]) . "'),"; 
} 
$sql = rtrim($sql, ','); 

Вы заметите, что я также спасся переменную POST. Вы должны сделать это, чтобы предотвратить инъекции SQL. В идеальном мире вы переключитесь на подготовленные заявления, которые еще более безопасны.