Vadim_g
Новичок
Есть две базы данных MySQL. Нужно выбрать значения нескольких полей из одной и сравнить эти значения с полями другой базы, при наличии совпадения с этими элементами массива будут проводиться корректировки. То есть, задача — вытянуть из базы данных эти значения и записать их в массив, а далее нужно, насколько я понимаю, в цикле сравнить значение одного элемента массива со всеми значениями элементов нескольких массивов, то есть, осуществить поиск этого элемента во втором массиве.Как это правильно написать на php? Мой вариант кода представлен ниже, но он не работает. Помогите пожалуйста разобраться в чем я ошибся, или может я к решению данного вопроса подошел не с той стороны.
<?php
header('Content-Type: text/html; charset=utf-8');//меняем кодировку
ini_set("max_execution_time", 600);//время исполнения 10 мин
// создание подключения к БД нового сайта
$dbHost_new='...';
$dbName_new='...';
$dbUser_new='...';
$dbPass_new='...';
$myConnect_new = mysql_connect($dbHost_new,$dbUser_new,$dbPass_new);
mysql_select_db($dbName_new,$myConnect_new);
if(!$myConnect_new)
{
throw new Exception('Не удалось подключиться к базе данных! Проверьте параметры подключения');
}else{
echo "<h2>База удачно подключена!</h2>";
}
if(!mysql_select_db($dbName_new,$myConnect_new)) // выбор бд
{
throw new Exception("Не удалось выбрать базу данных {$dbName_new}!");
}else{
echo "<h2>База {$dbName_new} удачно выбрана!</h2>";
}
mysql_set_charset("utf8");
// создание подключения к БД старого сайта
$dbHost_old='...';
$dbName_old='...';
$dbUser_old='...';
$dbPass_old='...';
$myConnect_old = mysql_connect($dbHost_old,$dbUser_old,$dbPass_old);
mysql_select_db($dbName_old,$myConnect_old);
if(!$myConnect_old)
{
throw new Exception('Не удалось подключиться к базе данных! Проверьте параметры подключения');
}else{
echo "<h2>База удачно подключена!</h2>";
}
if(!mysql_select_db($dbName_old,$myConnect_old)) // выбор бд
{
throw new Exception("Не удалось выбрать базу данных {$dbName_old}!");
}else{
echo "<h2>База {$dbName_old} удачно выбрана!</h2>";
}
mysql_set_charset("utf8");
// ========подключение к базе данных осуществленно!==================================
$count_statey = mysql_query("SELECT publish_up FROM gwert_content",$myConnect_old);
$count_statey = mysql_num_rows($count_statey); //подсчет количества строк в базе
print_r($count_statey);
$result = mysql_query("SELECT id,date,alt_name,title FROM dle_post",$myConnect_new);
$result_old = mysql_query("SELECT id,title,publish_up,alias FROM gwert_content",$myConnect_old);
$n=0;
$m=0;
while($row[] = mysql_fetch_array($result));
{
$row[$n]["date"] = substr($row[$n]["date"], 0, 10);
while ($row_old[$m][] = mysql_fetch_array($result_old)) {
$row_old[$m]["publish_up"] = substr($row_old[$m]["publish_up"], 0, 10);//обрезаем время, оставляем только дату
if($row[$n]["date"] == $row_old[$m]["publish_up"]){
echo " Элемент массива ";
echo($row[$n]["date"]);
echo "совпал с элементом массива";
print_r($row_old[$m]["publish_up"]);
}
$m++;
}
$n++;
}
print_r($row);
?>
<?php
header('Content-Type: text/html; charset=utf-8');//меняем кодировку
ini_set("max_execution_time", 600);//время исполнения 10 мин
// создание подключения к БД нового сайта
$dbHost_new='...';
$dbName_new='...';
$dbUser_new='...';
$dbPass_new='...';
$myConnect_new = mysql_connect($dbHost_new,$dbUser_new,$dbPass_new);
mysql_select_db($dbName_new,$myConnect_new);
if(!$myConnect_new)
{
throw new Exception('Не удалось подключиться к базе данных! Проверьте параметры подключения');
}else{
echo "<h2>База удачно подключена!</h2>";
}
if(!mysql_select_db($dbName_new,$myConnect_new)) // выбор бд
{
throw new Exception("Не удалось выбрать базу данных {$dbName_new}!");
}else{
echo "<h2>База {$dbName_new} удачно выбрана!</h2>";
}
mysql_set_charset("utf8");
// создание подключения к БД старого сайта
$dbHost_old='...';
$dbName_old='...';
$dbUser_old='...';
$dbPass_old='...';
$myConnect_old = mysql_connect($dbHost_old,$dbUser_old,$dbPass_old);
mysql_select_db($dbName_old,$myConnect_old);
if(!$myConnect_old)
{
throw new Exception('Не удалось подключиться к базе данных! Проверьте параметры подключения');
}else{
echo "<h2>База удачно подключена!</h2>";
}
if(!mysql_select_db($dbName_old,$myConnect_old)) // выбор бд
{
throw new Exception("Не удалось выбрать базу данных {$dbName_old}!");
}else{
echo "<h2>База {$dbName_old} удачно выбрана!</h2>";
}
mysql_set_charset("utf8");
// ========подключение к базе данных осуществленно!==================================
$count_statey = mysql_query("SELECT publish_up FROM gwert_content",$myConnect_old);
$count_statey = mysql_num_rows($count_statey); //подсчет количества строк в базе
print_r($count_statey);
$result = mysql_query("SELECT id,date,alt_name,title FROM dle_post",$myConnect_new);
$result_old = mysql_query("SELECT id,title,publish_up,alias FROM gwert_content",$myConnect_old);
$n=0;
$m=0;
while($row[] = mysql_fetch_array($result));
{
$row[$n]["date"] = substr($row[$n]["date"], 0, 10);
while ($row_old[$m][] = mysql_fetch_array($result_old)) {
$row_old[$m]["publish_up"] = substr($row_old[$m]["publish_up"], 0, 10);//обрезаем время, оставляем только дату
if($row[$n]["date"] == $row_old[$m]["publish_up"]){
echo " Элемент массива ";
echo($row[$n]["date"]);
echo "совпал с элементом массива";
print_r($row_old[$m]["publish_up"]);
}
$m++;
}
$n++;
}
print_r($row);
?>