[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: запрос на количество строк
mmsgold
что то здесь не так, или все норм?
foreach ($massivFilm as $key => $value) {
$sql = "SELECT * FROM films WHERE id_parser=$massivFilm[id_parser]";
$result = $mysqli->query($sql) or die("нежданчик");
$count_row=$result->$num_rows;
if ($count_row >= 1)
{
unset($massivFilm[$key]);
echo "запись из массива была удалена";
}
}


ps туплю, поторопился, с вопросом
mmsgold
скорее вот так надо, но чет не работает тоже


while($massivFilm) {
$sql = "SELECT * FROM films WHERE id_parser=$massivFilm[id_parser]";
echo $sql;
$result = $mysqli->query($sql) or die("нежданчик");
$count_row=$result->$num_rows;
if ($count_row >= 1)
{
unset($massivFilm[id_parser]);
echo "запись из массива была удалена";
}
}
123456
массив в цикле!
Arh
Всё не так.
Код оформлен не в том теге.
Запрос в цикле.
$massivFilm[id_parser] - id_parser это константа? Если да, то константы принято писать в верхнем регистре, если это текст, то в кавычках одинарных, если переменная, то знак доллара забыл =)



_____________
Промокод предоставляет скидку на заказ домена и/или хостинга reg.ru
BFCC-3895-8804-9ED2
mmsgold
Arh,
это ассоциативный массив, $massivFilm["id_parser"] - я думаю надо поправить синтакссическую ошибку, да в цикле запрос, сравниваю базу с массивом, потом массив кину в базу чтоб не было повторений user posted image
S.Chushkin
Это что?
$result->$num_rows


_____________
Рекламка / ad.pesow.com Хрень / mr-1.ru
mmsgold
все я въехал, у меня там двумерный массив, вот и не пашет
S.Chushkin, ну это свойство объекта(количество строк)
mmsgold
и как его перебрать теперь....так не прокатит
while($massivFilm[]) {
$sql = "SELECT * FROM films WHERE id_parser=$massivFilm[][id_parser]";
echo $sql;
$result = $mysqli->query($sql) or die("нежданчик");
$count_row=$result->$num_rows;
if ($count_row >= 1)
{
unset($massivFilm[id_parser]);
echo "запись из массива была удалена";
}
}
AllesKlar
$ids = '';
while($massivFilm as $film)
{
$ids .= $film . ',';
}

$ids = rtrim( $ids, ',');

$sql = "SELECT id_parser FROM films WHERE id_parser IN (" . $ids .")";
$result = $mysqli->query($sql) or die("нежданчик");
.....

/// запрос вернет все id_parser из базы, которые нужно удалить из массива


_____________
[продано копирайтерам]
mmsgold
мой вариант
$count_massiv = count($massivFilm);

for ($i=0; $count_massiv > $massivFilm[$i]; $i++) {
# code...
echo "<br> а вот и АЙДИ =".$massivFilm[$i][id_parser];
break;
$sql = "SELECT * FROM films WHERE id_parser=$massivFilm[$i][id_parser]";
echo $sql;
$result = $mysqli->query($sql) or die("нежданчик");
$count_row=$result->$num_rows;
if ($count_row >= 1)
{
unset($massivFilm[$i]);
echo "запись из массива была удалена";
}
}

AllesKlar
Цитата (mmsgold @ 12.09.2015 - 19:52)
мой вариант

Твой вариант плох тем, что запрос к базе в цикле - это вселенское зло.
У меня всего ОДИН запрос.

Ну, и пока ты не покажешь структуру массива $massivFilm никто тебе не поможет

_____________
[продано копирайтерам]
mmsgold
AllesKlar, я не въехал в твой код, попробую разобраться в нем
Arh
И чё работает?)
S.Chushkin сказал же что свойство неправильно написано.
а AllesKlar показал как делать что бы триллион запросов на сервер не слать.
а ты всё равно сделал как и было.

_____________
Промокод предоставляет скидку на заказ домена и/или хостинга reg.ru
BFCC-3895-8804-9ED2
mmsgold
Arh, пока не работает(, но его идею я понял
mmsgold
из документации, вот же праввильно свойство написал
$mysqli = new mysqli("localhost", "my_user", "my_password", "world");

/* проверка соединения */
if (mysqli_connect_errno()) {
printf("Соединение не удалось: %s\n", mysqli_connect_error());
exit();
}

if ($result = $mysqli->query("SELECT Code, Name FROM Country ORDER BY Name")) {

/* определение числа рядов в выборке */
========>>>>>>>> $row_cnt = $result->num_rows;

printf("В выборке %d рядов.\n", $row_cnt);

/* закрытие выборки */
$result->close();
}

/* закрытие соединения */
$mysqli->close();
Быстрый ответ:

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