Первый вставляет в таблицу значения
Второй дополняет эту таблицу еще одним значением.
Специфика такова, что одновременно вставить все я не могу. Поэтому приходится городить огород.
Т.е. сначала INSERT, а следующий массив UPDATE.
Вот часть кода ----я укоротил, заакцентировав внимние на запросах:
PHP:
<?
$i=0;
$n=0;
foreach($match[1] as $h33)
{
$sql = "SELECT id FROM `names` WHERE name='$name'";
$data = mysql_query($sql);
$qq=mysql_fetch_assoc($data);
$id=$qq['id'];
$query = "INSERT INTO `tracklist` (`text_tracklist`, `page`, `name_id`) VALUES ('$a', '$i', '$id')";
mysql_query($query) or die(mysql_error());
$i++;
}
foreach($new1 as $key)
{
$sql = "SELECT id FROM `names` WHERE name='$name'";
$data = mysql_query($sql);
$qq=mysql_fetch_assoc($data);
$id=$qq['id'];
$query="UPDATE tracklist SET list ='$new1', WHERE name_id = '$id' , page='$n'";
mysql_query($query) or die(mysql_error());
$n++;
}
?>
В итоге Пишет
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'WHERE name_id = '9' , page='0'' at line 1 и ничего не вставляется из второго массива..
При таком запросе
$query="UPDATE tracklist SET list ='$new1', page='$n' WHERE name_id = '$id' ";
Пишет про duplicate key и вставляет только первую запись второго массива.
p/s первый массив вставлется без проблем в обоих случаях.
Спустя 1 час, 56 минут, 58 секунд (24.02.2011 - 15:41) Evilsoul написал(а):
Здесь:
не запятая а AND или OR
$query="UPDATE tracklist SET list ='$new1', WHERE name_id = '$id' , page='$n'";
не запятая а AND или OR
$query="UPDATE tracklist SET list ='$new1', WHERE name_id = '$id' AND page='$n'";
Спустя 3 часа, 38 минут, 50 секунд (24.02.2011 - 19:20) sergeiss написал(а):
Evilsoul - и еще ты не сказал про еще одну запятую, перед WHERE - она там вообще не нужна.
Спустя 10 минут, 59 секунд (24.02.2011 - 19:31) KonstantinK написал(а):
А что переменные
вот тут и дальше так и вставляются в без обработки или это сокращенный код?
$query = "INSERT INTO `tracklist` (`text_tracklist`, `page`, `name_id`) VALUES ('$a', '$i', '$id')";
вот тут и дальше так и вставляются в без обработки или это сокращенный код?
Спустя 2 часа, 54 минуты, 29 секунд (24.02.2011 - 22:25) Evilsoul написал(а):
sergeiss
Ах да, точно
KonstantinK
ну это вопрос "третий" там проблему решить нужно
Ах да, точно

KonstantinK
ну это вопрос "третий" там проблему решить нужно

_____________
Работаю за еду ! __))
И за плюсики !