$db_host = 'localhost';
$db_user = 'root';
$db_password = '';
$db_name = 'price_sites';
$linkps = mysqli_connect($db_host, $db_user, $db_password, $db_name);
$query = "SELECT * FROM table1 LEFT JOIN table2 USING(item)";
$result = mysqli_query($linkps, $query);
$numrows = mysqli_num_rows($result);
function DrawTableNames()
{
global $numrows;
for($i=0;$i<numrows;$i++){
echo '\< td \>';
echo mysqli_result($result,$i,'item');
echo '\< \/td \>';
}
}
function DrawTableSites($site)
{
global $numrows;
for($i=0;$i<numrows;$i++){
echo "\< td \>",mysqli_result($result,$i,$site),"\< \/td \>";
}
}
for($i=0;$i < numrows;$i++)
? может там 1 000 000 000 000 строк? <?php
$start = microtime(true);
$host = 'localhost'; // адрес сервера
$database = 'price_sites';
$user = 'root';
$password = '';
$link = mysqli_connect($host, $user, $password, $database)
or die("Ошибка " . mysqli_error($link));
mysqli_close($link);
echo 'Скрипт выполнен за: '.(microtime(true) - $start).' сек.';
//set_time_limit(120); // может понадобиться увеличить время выполнения
$db_host = 'localhost';
$db_user = 'root';
$db_password = '';
$db_name = 'price_sites';
$linkps = mysqli_connect($db_host, $db_user, $db_password, $db_name);
$limit = 1000;
$offset = 0;
// выполняем запрос с подсчетом общего числа результатов
$query = sprintf("SELECT SQL_CALC_FOUND_ROWS * FROM table1 LEFT JOIN table2 USING(item) LIMIT %d,%d", $offset,$limit);
$result = mysqli_query($linkps, $query);
// получаем общее число результатов
$resultTotal = mysqli_query($linkps, "SELECT FOUND_ROWS() AS total");
$res = mysqli_fetch_assoc($resultTotal);
$numrows = $res['total'];
// идем в цикле по результатам
for ($offset = 0; $offset <= $numrows ; $offset += $limit) {
// получаем строки из результата
while ($row = mysqli_fetch_assoc($result)) {
// Что-нибудь делаем с полученной строкой
print_r($row);
}
//запрашиваем очередную порцию данных
$query = sprintf("SELECT * FROM table1 LEFT JOIN table2 USING(item) LIMIT %d,%d", $offset,$limit);
$result = mysqli_query($linkps, $query);
}