[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Подскажите с PHP и MySQL
Гость_Павел
Подскажите. Закомментированное echo работает, а незакомментированное нет. Пишет
Parse error: syntax error, unexpected '[', expecting '(' in /.............. on line 20

<?php 
include_once("dbConnect.php");

$array = array(
"hdd",
"ssd",
"cooler",

);

print_r($array);
$i=0;
for($i=0;$i<count($array);$i++){
#echo "Тип ".$array[$i]." работает ";
echo '$query="SELECT pn,name,price,cena,picture,url,vendor,vend,names,pres,present,war,gar from '.array[$i].' left join `price1` on '.array[$i].'.pn=price1.code;";
$result=mysql_query($query,$link);
while ($row=mysql_fetch_assoc($result)) {
$updateQuery="update '
.array[$i].' set pres=".$row["present"]." where pn=".$row["pn"].";";
mysql_query($updateQuery,$link);
}'


}
?>




Спустя 28 минут (23.09.2012 - 15:13) AlmazDelDiablo написал(а):
С кавычками разберитесь. У вас открывающая — одинарная, а закрывающая — двойная.

Спустя 1 минута, 13 секунд (23.09.2012 - 15:15) lastdays написал(а):
phpexpereditor в помощь, прекрасная подсветка.


п.с.

include_once("dbConnect.php");

$array = array("hdd", "ssd", "cooler");
//print_r($array);
$i=0;
for($i=0; $i<count($array); $i++){
$query="SELECT pn,name,price,cena,picture,url,vendor,vend,names,pres,present,war,gar from '.array[$i].' left join `price1` on '.array[$i].'.pn=price1.code;";
$result=mysql_query($query,$link);
while ($row=mysql_fetch_assoc($result)) {
$updateQuery="update '.array[$i].' set pres=".$row["present"]." where pn=".$row["pn"].";";
mysql_query($updateQuery,$link);
}

}

Спустя 44 минуты, 25 секунд (23.09.2012 - 15:59) Гость_Павел написал(а):
Цитата (lastdays @ 23.09.2012 - 15:15)


п.с.

include_once("dbConnect.php");

$array = array("hdd", "ssd", "cooler");
//print_r($array);
$i=0;
for($i=0; $i<count($array); $i++){
$query="SELECT pn,name,price,cena,picture,url,vendor,vend,names,pres,present,war,gar from '.array[$i].' left join `price1` on '.array[$i].'.pn=price1.code;";
$result=mysql_query($query,$link);
while ($row=mysql_fetch_assoc($result)) {
$updateQuery="update '.array[$i].' set pres=".$row["present"]." where pn=".$row["pn"].";";
mysql_query($updateQuery,$link);
}

}

ошибки не возникает но скрипт не выполняется - изменения в таблицу не вносятся. в чем может быть проблема?

Спустя 6 минут, 44 секунды (23.09.2012 - 16:06) neadekvat написал(а):
В тексте запроса. Нигде же не проверяется ответ mysql.

Спустя 46 минут, 38 секунд (23.09.2012 - 16:52) Гость_Павел написал(а):
Цитата (neadekvat @ 23.09.2012 - 16:06)
В тексте запроса. Нигде же не проверяется ответ mysql.

не понял(

Спустя 3 минуты, 34 секунды (23.09.2012 - 16:56) Guest написал(а):
$query="SELECT pn,name,price,cena,picture,url,vendor,vend,names,pres,present,war,gar from `hdd` left join `price1` on hdd.pn=price1.code;";
$result=mysql_query($query,$link);
while ($row=mysql_fetch_assoc($result)) {
$updateQuery="update hdd set price='".$row["cena"]."' where pn='".$row["pn"]."';";
mysql_query($updateQuery,$link);
}

вот такая штука работает, а если подключить подстановку по циклу не работает. что делать?

Спустя 8 минут, 43 секунды (23.09.2012 - 17:05) neadekvat написал(а):
Цитата (Гость_Павел @ 23.09.2012 - 17:52)
не понял(

После подставления переменной выведи получившуюся строку, что у тебя там за запрос получается.
Или внимательно посмотри на код, может, где-то $ пропустил..

Спустя 55 минут, 8 секунд (23.09.2012 - 18:00) Гость_Павел написал(а):
<?php 
include_once("dbConnect.php");

$array = array("hdd", "ssd", "cooler");
//print_r($array);
$i=0;
for($i=0; $i<count($array); $i++){
$query="SELECT pn,name,price,cena,picture,url,vendor,vend,names,pres,present,war,gar from '.array[$i].' left join `price1` on '.array[$i].'.pn=price1.code;";
echo $query;
$result=mysql_query($query,$link);
while ($row=mysql_fetch_assoc($result)) {
$updateQuery="update '.array[$i].' set name=".$row["names"]." where pn=".$row["pn"].";";
echo $updateQuery;
mysql_query($updateQuery,$link);
}

}

?>



выводит
SELECT pn,name,price,cena,picture,url,vendor,vend,names,pres,present,war,gar from '.array[0].' left join `price1` on '.array[0].'.pn=price1.code;SELECT pn,name,price,cena,picture,url,vendor,vend,names,pres,present,war,gar from '.array[1].' left join `price1` on '.array[1].'.pn=price1.code;SELECT pn,name,price,cena,picture,url,vendor,vend,names,pres,present,war,gar from '.array[2].' left join `price1` on '.array[2].'.pn=price1.code;


при замене '.array[$i].' на ".array[$i]." выводит

Parse error: syntax error, unexpected '[', expecting '(' in /home/ommo/ommo.com.ua/www/trololo.php on line 13

Спустя 7 минут, 51 секунда (23.09.2012 - 18:08) neadekvat написал(а):
То есть array - это какая-то константа, я так понимаю?

Спустя 22 минуты, 9 секунд (23.09.2012 - 18:30) inpost написал(а):
Тебе говорили, разберишь с кавычками...
"update '.array[$i].'
Почему начало с двойной, а потом ОДИНАРНАЯ и конкатенация?

Спустя 17 часов, 20 минут, 48 секунд (24.09.2012 - 11:51) Гость_Павел написал(а):
Все было предельно просто) просто надо было добавить знак $ перед массивом, чтобы выводить не массив а переменную. а я натупил)
Быстрый ответ:

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