2015-05-13 2 views
-4

Я пытаюсь добавить результаты запроса к новой пустой таблице, таблица уже существует ..Добавить несколько строк из PHP запроса MySQL

Вот мой код до сих пор, никаких ошибок не придумать, но это не вставляя либо,

Любая помощь будет хорошо ..

<?php require_once('../Connections/OASDB.php'); 

mysql_select_db($database_OASDB, $OASDB); 

$sql = "SELECT SnPf, InvoiceNo, CustomerName FROM VSTStbl000010 WHERE SnPf = '40446'"; 
$result = mysql_query($sql) or die(mysql_error()); 

$INS = array(); 

while($row = mysql_fetch_assoc($result)) { 
$INS[] = $row; 
} 

foreach($INS as $row) { 
$INS[] = '("'.mysql_real_escape_string($row['InvoiceNo']).'", '.$row['CustomerName'].')'; 

mysql_query('INSERT INTO phptest (InvoiceNo, CustomerName) VALUES '.implode(',', $INS)); 
} 

?> 

Update -

Я сейчас, используя ...

<?php require_once('../Connections/OASDB.php'); 

mysql_select_db($database_OASDB, $OASDB); 

$sql = "SELECT SnPf, InvoiceNo, CustomerName FROM VSTStbl000010 WHERE SnPf = '18490'"; 
$result = mysql_query($sql) or die(mysql_error()); 

$INS = array(); 

while($row = mysql_fetch_assoc($result)) { 
$INS[] = $row; 
} 

foreach($INS as $row) { 
    mysql_query("INSERT INTO phptest (InvoiceNo, CustomerName) VALUES (".$row['InvoiceNo'].", '".$row['CustomerName']."') or die(mysql_error()"); 
} 

?> 

К сожалению, я вернулся к ошибкам и все еще не вставляю?

Спасибо за всю помощь, до сих пор ..

+0

ошибок нет, потому что вы не проверяете их на свой INSERT. –

+1

Это небрежный способ сделать это. Кроме того, вы не проверяете наличие ошибок. MySQL расскажет вам, что не так, если вы его искали. –

+0

Я удалил проверку ошибок, чтобы сделать вопрос более кратким. –

ответ

0

Вы добавляете еще один элемент в массив каждый раз, когда упаду в него.

, который полностью взламывает все и делает запрос неудачным.

После вашего обновления, опубликованного вами, вы неправильно ввели в свой запрос команду «die()» PHP. Вам нужно это сделать.

Просто скопируйте/вставьте код, который я предоставил, это перетаскивание.

ли работа, если вы делаете это так ...

mysql_select_db($database_OASDB, $OASDB); 

$sql = "SELECT SnPf, InvoiceNo, CustomerName FROM VSTStbl000010 WHERE SnPf = '40446'"; 
$result = mysql_query($sql) or die(mysql_error()); 

$INS = array(); 

while($row = mysql_fetch_assoc($result)) { 
$INS[] = $row; 
} 

foreach($INS as $row) { 
    mysql_query("INSERT INTO `phptest` (`InvoiceNo`, `CustomerName`) VALUES (".$row['InvoiceNo'].", '".$row['CustomerName']."')"; 
} 
+0

Спасибо за это, я вижу, откуда вы пришли, это удар снова начал старый мозг, просто получив неожиданный «;» теперь ... –

+0

ОК, шаг вперед .. и назад .. –

+0

Вот мой модифицированный код .. –

-1

Спасибо Notorious, да я работал, что поставил и теперь работает с этим кодом ..

Еще раз спасибо

foreach($INS as $row) { 
    mysql_query("INSERT INTO phptest (InvoiceNo, CustomerName) VALUES (".$row['InvoiceNo'].", '".$row['CustomerName']."')"); 
} 
+0

Мне очень жаль, если я обидел вас, это было не мое намерение, без вас я бы не исправил это, я думал, вы просто отметили последнее, что устранило проблему. –

+0

Не беспокойтесь об этом, я, должно быть, был распущен в тот день. я бы забрал нить, если мог, но это не позволит мне. СРЮ –

Смежные вопросы