|
|
|
| Помогите, пожалуйста с массивами!
Как можно объединить несколько массивов в один.
вот таких:
Array
(
[0] => 11
[1] => 45
[2] => 78
[3] => 15
)
Array
(
[0] => 11
[1] => 85
[2] => 78
[3] => 196
)
|
А потом нужно будет удалить совпадающие значения в этом созданном одном массиве? | |
|
|
|
|
|
|
|
для: xpom
(15.09.2008 в 21:48)
| |
$result = array_unique(array_merge($arr_1, $arr_2));
|
| |
|
|
|
|
|
|
|
для: koshka
(15.09.2008 в 22:49)
| | Спасибо, большое с функциями разобрался!
Подскажите а если у меня выводится из базы данных эти массивы в цикле, как их можно собрать в функцию array_merge($arr_1, $arr_2) через запятую?
Вот так выводятся массивы:
while($res1 = mysql_fetch_array($result))
{
$res2=$res1['text'];
$res3 = explode ( " " , $res2);//вот здесь данные преобразуются в массивы
}
|
Может нужно с помошью цикла FOR? | |
|
|
|
|
|
|
|
для: xpom
(16.09.2008 в 11:15)
| | Напишите что у вас на входе (структура таблиц) и что у вас на выходе (что должен содержать конечный массив, да и вообще есть ли в нём необходимость). Потому как такие вещи должны решатся средствами РНР только в том случае если их нельзя решить средствами СУБД. | |
|
|
|
|
|
|
|
для: Valick
(16.09.2008 в 12:05)
| | Структура таблицы следующая:
CREATE TABLE IF NOT EXISTS table (
TID INTEGER NOT NULL AUTO_INCREMENT,
Now INTEGER NOT NULL,
Name VARCHAR(150),
obekt text NOT NULL,
Primary Key (TID ),
FOREIGN KEY (Now) REFERENCES Now(TID )
)
|
В этой таблице, выбираем данные исходя из значения поля Now. Поле obekt имеет данные в виде цифр записанных в строку через пробел функцией implode(" ", $per).
Дальше создаю запрос к базе:
$result = mysql_query("SELECT TID, obekt FROM table WHERE Now=".$per1,$db);
|
и после этого делал цикл чтобы создать массивы из поля obekt:
while($res1 = mysql_fetch_array($result))
{
$res2=$res1['obekt'];
$res3 = explode ( " " , $res2);
}
|
В конечном итого необходимо получить массив из массивов, которые будут выведены из таблицы поля obekt, в этих массивах будут совпадать данные, которые нужно удалить и потом все несовпадающие вывести в виде цифр.
А вообще задумка такая, нужно вывести все цифры поля obekt, только там есть совпадающие, а вывести нужно без совпадающих, в зависимости от значения Now, и каждая цифра будет создавать новую ссылку в виде значения в переменной:
<A class=ssil href='http://www.....fail.php?region=(значение из базы данных поля obekt )' title='Ссылка ' target='_self'>Ссылка</A>
|
| |
|
|
|
|
|
|
|
для: xpom
(16.09.2008 в 13:10)
| | И с именем поля Now (так как вы его приписываете) у вас никаких проблем не возникает? Что означает region? | |
|
|
|
|
|
|
|
для: sim5
(16.09.2008 в 13:22)
| | Now не знаю, это я по памяти прописал, а вообще у меня там Cas прописано, а вместо регион id_porydok= это переменная которая передается методом GET. | |
|
|
|
|
|
|
|
для: xpom
(16.09.2008 в 13:40)
| | В MySQL существует функция NOW() для работы с датами, и негоже поля таблицы именованные зарезервированным именем прописывать так, как вы это делаете. Я понимаю, что GET, я спрашиваю о сущности этой переменной. | |
|
|
|
|
|
|
|
для: xpom
(16.09.2008 в 13:10)
| |
region=(значение из базы данных поля obekt )
|
и
как-то невяжутся | |
|
|
|
|
|
|
|
для: Valick
(16.09.2008 в 14:19)
| | Да я совсем забыл про функцию NOW(), так быстро писал что не обращал внимания на названия переменных.
>
region=(значение из базы данных поля obekt )
|
>и
>
>как-то невяжутся
Назовем тогда не region а obekt, правильно я понял?
Почему не вяжутся?? Ведь ссылка где используется region= нужна не для этой таблицы, а совсем для другой и других действий, она у меня никак не влияет на данную таблицу.
Мы ссылку можем не затрагивать, а просто нужно вывести числа из полученного массива в конечном итоге. | |
|
|
|
|
|
|
|
для: xpom
(16.09.2008 в 16:21)
| | Ссылка на что-то, это ссылка на нечто уникальное в каждом случае. Вы могли бы объяснить, почему это уникальное у вас встречается в разных местах таблицы? Вот и хотелось бы узнать, что из себя представляет region (obekt в новой версии), не как имя переменной, а конечная цель. | |
|
|
|
|
|
|
|
для: sim5
(16.09.2008 в 16:30)
| | >Вы могли бы объяснить, почему это уникальное у вас встречается в разных местах таблицы?
Что-то не совсем понятно??
Просто нужно вывести ссылки на динамические страницы на одной страницы, т.е. с разными значениями переменной region (obekt в новой версии)... | |
|
|
|
|
|
|
|
для: xpom
(16.09.2008 в 16:21)
| | Ведь ссылка где используется region= нужна не для этой таблицы, а совсем для другой
контрольный выстрел в голову...
а варенье варить или банки с огурцами закрывать ваш скрипт не умеет случайно?
И о чём ещё нужно догадаться? | |
|
|
|
|
|
|
|
для: Valick
(16.09.2008 в 17:09)
| | >а варенье варить или банки с огурцами закрывать ваш скрипт не умеет случайно?
не пока не умеет, не научил его еще))))
не прошу прощения ссылка используется для этой таблицы, не используется эта переменная region= для запроса к таблице, я просто построил все средствами РНР, а не СУБД....по моему там с помощью СУБД не получилось бы, а может просто мозгов у меня не хватило?? | |
|
|
|
|
|
|
|
для: xpom
(16.09.2008 в 17:22)
| | Ну дык яж не говорю, что у меня ума палата.. и что мои скрипты давно корову доят и свинюшек кормят!))) Просто приведите структуру таблиц в базе (может что там подправим сообща) и чётко сформулируйте задачу (простого вопроса "как это всунуть туда" (что - это, куда - туда и главное зачем) нехватает) | |
|
|
|
|
|
|
|
для: Valick
(16.09.2008 в 17:34)
| | структура таблицы вот такая, единственное что, так это то что тут полей не хватает, но те поля нам никак ненужны, обычные данные в поле VARCHAR:
CREATE TABLE IF NOT EXISTS table (
TID INTEGER NOT NULL AUTO_INCREMENT,
Tip INTEGER NOT NULL,
Name VARCHAR(150),
obekt text NOT NULL,
Primary Key (TID ),
FOREIGN KEY (Tip) REFERENCES Tip(TID )
)
|
структура таблицы obekt:
REATE TABLE obekt (
idob int(5) NOT NULL auto_increment,
Tip int(2) NOT NULL default '0',
nameob varchar(100) NOT NULL default '',
PRIMARY KEY (idob)
)
|
структура таблицы Tip:
CREATE TABLE IF NOT EXISTS Tip (
TPID INTEGER NOT NULL AUTO_INCREMENT,
TipName VARCHAR(30),
Primary Key (TPID)
)
|
Теперь, что нужно сделать!
нужно вот из этих данных поля idob таблицы obekt, которые заносятся в таблицу table в поле obekt в виде строки с числами через запятую с помошью функции implode(" ", $arr);, а потом извлекаются в массивы с помошью функции explode ( " " , $arr), все которы не повторяются вывести в ссылку
<A class=ssil href='http://www.....fail.php?obekt=(значение из базы данных поля obekt таблицы table )' title='(значение из поля nameob таблицы obekt ) ' target='_self'>(значение из поля nameob таблицы obekt )</A>
| чтобы сделать перелинковку для поисковиков.
Вроде должно быть понятно, если че еще расскажу.. | |
|
|
|
|
|
|
|
для: xpom
(16.09.2008 в 18:45)
| | подскажите, пожалуйста, можно функцию объединения массивов array_merge() применить в цикле, т.е. массивы перечисляются в цикле??? | |
|
|
|
|
|
|
|
для: xpom
(18.09.2008 в 11:46)
| | Наверное, не возможно сделать так чтобы в цикле, если еще имеется значение, то чтобы добавлялась переменная с порядковым индексом? | |
|
|
|