У меня есть живой сервер и тестовый сервер прямо сейчас, и мне нужно скопировать таблицу из живого для тестирования с помощью cron, потому что она должна запускаться каждый час. Я создал сценарий php
и протестировал его с помощью localhost, и он отлично работает, но когда я тестирую на реальном сервере, он не работает.Скопируйте таблицу с другого сервера с помощью cron
Я подозреваю, что, когда на локальном хосте, хотя он между разными базами данных, но все еще использует одно и то же соединение с сервером. и я использую phpmyadmin
.
Edit: Вот код
<?php
/* fill in your source database name */
$database = "xxx";
$dbhost1 = "xxx";
$dbusr1 = "xxx";
$dbpas1 = "xxx";
/* fill in your target database name */
$database2 = "yyy";
$dbhost2 = "yyy";
$dbusr2 = "yyy";
$dbpas2 = "yyy";
if ($connect = mysqli_connect($dbhost1, $dbusr1, $dbpas1))
{
mysql_select_db($database, $connect);
echo "connected to xxx<br/>";
}
else { die("Source database fail to connect: Please try again" . mysql_error());}
if ($connect2 = mysqli_connect($dbhost2, $dbusr2, $dbpas2))
{
mysql_select_db($database2, $connect2);
echo "connected to yyy<br/>";
}
else { die("Target database fail to connect 1: " . mysql_error());}
set_time_limit(0);
$tables = array("coupon");
$tables_no = count($tables);
for ($i=0; $i < $tables_no ; $i++){
$tab = $tables[$i];
$query_table1 = "SELECT * FROM $database.$tab";
$query_table2 = "SELECT * FROM $database2.$tab";
$source= mysql_query($query_table1);
$destination= mysql_query($query_table2);
if ($source <= $destination){
echo 'aaa';
while($row_table1 = mysql_fetch_array($source)){
// var_dump ($row_table1);
// if statement
}
}
else {echo 'dalam else';}
}
?>
" не работает "не является объяснением проблемы. – zerkms
, показывающий некоторый скрипт, может помочь, вы можете замаскировать конфиденциальные данные ... –
Извините. Я помещаю скрипт на тестовый сервер, и когда я его запускаю, кажется, что он не может прочитать инструкцию запроса. Я положил скрипт на помощь. Спасибо – Kiki