[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Синтаксическая ошибка при работе с массивами.
Forzalinip

for ( $i=0; $i<5; $i++)
{
$query1="INSERT INTO second (a,b,c,d) VALUES ('$id','$massiv_[$i*9]','$massiv[$i*9+1]','$massiv[$i*9+2]')";
$result1= mysql_query($query1);
}


поробовал так :

function index($q,$w)
{
$temp=$q*9+$w;
return $temp;
}

for ( $i=0; $i<5; $i++)
{
$query1="INSERT INTO second (a,b,c,d) VALUES ('$id','$massiv_[index($i,0)]','$massiv[index($i,1)]','$massiv[index($i,2)]')";
$result1= mysql_query($query1);
}

Пишет что синтаксическая ошибка...
Пробовал без цикла,с конкретными элементами массива выполнять запрос к БД , он работал....
Помогите обнаружить ошибку.



Спустя 12 минут, 38 секунд (30.10.2010 - 16:16) kovaldm написал(а):

$query1="INSERT INTO second (a,b,c,d) VALUES ('".$id."','".$massiv_[index($i,0)]."','".$massiv[index($i,1)]."','".$massiv[index($i,2)]."')";

Спустя 20 минут, 47 секунд (30.10.2010 - 16:37) Forzalinip написал(а):
Цитата (kovaldm @ 30.10.2010 - 13:16)

$query1="INSERT INTO second (a,b,c,d) VALUES ('".$id."','".$massiv_[index($i,0)]."','".$massiv[index($i,1)]."','".$massiv[index($i,2)]."')";

СПАСИБО!!!
Целай день мучался!Подскажи,что не так в первом варианте?Так же двойные кавычки и точки?

Спустя 9 минут, 50 секунд (30.10.2010 - 16:47) kovaldm написал(а):
Ага.
Только это называется синтаксическая ошибка SQL - запроса.

Спустя 10 минут, 40 секунд (30.10.2010 - 16:57) T1grOK написал(а):
Цитата (Forzalinip @ 30.10.2010 - 13:37)
Целай день мучался!Подскажи,что не так в первом варианте?Так же двойные кавычки и точки?

При форме записи использованной в вашем запросе, нельзя использовать массивы с вычисляемым индексом. Система не выполняет вложенных операций, то есть вычислить индекс потом получить по индексу значение, она сразу пытается получить значение по индексу и естественно выдает ошибку.

Спустя 3 минуты, 36 секунд (30.10.2010 - 17:01) T1grOK написал(а):
И еще одно, чтобы не путаться в кавычках советую вот такую форму записи:

$query1="INSERT INTO second (a,b,c,d) VALUES ('{$id}','{$massiv_[index($i,0)]}','{$massiv[index($i,1)]}','{$massiv[index($i,2)]}')";

Спустя 15 часов, 46 минут, 53 секунды (31.10.2010 - 09:48) Guest написал(а):
Цитата (T1grOK @ 30.10.2010 - 14:01)
И еще одно, чтобы не путаться в кавычках советую вот такую форму записи:

$query1="INSERT INTO second (a,b,c,d) VALUES ('{$id}','{$massiv_[index($i,0)]}','{$massiv[index($i,1)]}','{$massiv[index($i,2)]}')";

Благодарю!)

Спустя 47 минут, 58 секунд (31.10.2010 - 10:36) sergeiss написал(а):
Цитата (Forzalinip @ 30.10.2010 - 17:37)
Подскажи,что не так в первом варианте?

В первом варианте у тебя получается, что функция index() должна быть в SQL, а не в ПХП. Вот ошибка и вылезает. Выделив её кавычками, как это было показано, ты явно говоришь ПХП, что это его функция.
С фигурными скобками подобным образом выделяется... Но в данном случае, по-моему, лучше именно в отдельные строки выделить, которые объединяются точкой.
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.