powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / MySQL [игнор отключен] [закрыт для гостей] / сохранить одинаковые значания
4 сообщений из 4, страница 1 из 1
сохранить одинаковые значания
    #38841173
andrey_2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Всем доброго времени суток!

есть массив
Код: php
1.
$kod_tovara1 = array(555, 333,555);


и есть запрос
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
$sql2 = "SELECT `nazvanie-dlja-prajsa`,`beznal`    FROM  products where `kod` IN ('".implode("','", array_values($kod_tovara1))."')      ";

$result2 = mysql_query($sql2) or die ($sql2 . ' : ' . mysql_error());
 while ($row2 = mysql_fetch_array($result2)){

    $nazvaniedljaprajsa[] = $row2["nazvanie-dlja-prajsa"];
    $sbeznal[] = $row2["beznal"];

}



в новые массивы ($nazvaniedljaprajsa[] и $sbeznal[] ) не закидывает одинаковые значения.! в данном случае одинаковые выборки по второму значению "555" запросом игнорируется, а нужно что бы заносились повторные значения.
как можно исправить?
...
Рейтинг: 0 / 0
сохранить одинаковые значания
    #38841189
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_2014,

Сколько строк в таблице удовлетворяют условию отбора "код равен 555"? Допустим, имеется пять таких строк. Так что, сервер, как и полагается, возвращает как раз эти пять записей.

В принципе, "размножение" данных можно выполнить в скрипте, собрав ещё один массив, вида "код" => "количество повторений" и упихать присваивание в ещё один, вложенный, цикл. Разумеется, в выбрку следует добавить поле с кодом.

Другой вариант - использовать не один запрос с `kod` IN () , а несколько с `kod`=значение , объединив их результаты при помощи UNION.
...
Рейтинг: 0 / 0
сохранить одинаковые значания
    #38842222
andrey_2014
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Спасибо что откликнулись.

запрос c
Код: plaintext
IN
хорошо подходит так как простой и одним запросом делал массивы которые затем уходят в следующие циклы, причем масив
Код: plaintext
$kod_tovara1
формировался ( с кучей других значений) из других таблиц. Мне было важно что бы последовательность записи в новые массивы сохранялась в той же последовательности как и куча других значений в том же порядке.

так как база не большая то пока сделал через цикл
Код: plaintext
 For
поместив запрос в внутрь его.
Код: sql
1.
$sql2 = "SELECT `nazvanie-dlja-prajsa`,`beznal`    FROM  products where `kod` ='".$kod_tovara1[$x]."'       ";



записывает в массив все как надо.

хотя было бы хорошо обойтись без цикла ((
попробую через Union
...
Рейтинг: 0 / 0
сохранить одинаковые значания
    #38842284
JeStone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
andrey_2014,
У вас есть последовательность кодов
Код: php
1.
array(555, 333,555);


И вы можете из запроса получить последовательность кодов
Код: php
1.
$sql2 = "SELECT `kod`, `nazvanie-dlja-prajsa`,`beznal`    FROM  products where `kod` IN ('".implode("','", array_values($kod_tovara1))."')      ";


Можно сделать как-то так
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
while ($row2 = mysql_fetch_array($result2)){

    $tmp[$row2["kod"]][] = array("prays" => $row2["nazvanie-dlja-prajsa"], 
                   "bezna" => $row2["beznal"]);
}
foreach ($kod_tovar1 as $kod)
{
$tovars = $tmp[$kod];
foreach ($tovars as $tovar)
{
    $nazvaniedljaprajsa[] = $tovar["prays"];
    $sbeznal[] = $tovar["beznal"];
}
}
...
Рейтинг: 0 / 0
4 сообщений из 4, страница 1 из 1
Форумы / MySQL [игнор отключен] [закрыт для гостей] / сохранить одинаковые значания
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]