Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.86/7: Рейтинг темы: голосов - 7, средняя оценка - 4.86
11 / 11 / 3
Регистрация: 23.01.2014
Сообщений: 295

Проверка вывода из базы

29.12.2015, 14:57. Показов 1816. Ответов 46
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Здравствуйте, у меня такая проблема как сделать, то ли добавить в массив то ли как.
У меня из другой таблицы может выводится 100 или больше ссылок
Как сделать так что бы эта строка проверяла на наличие их всех
Допустим что ссылки эти выводятся в $l = link['link'];
PHP
1
$res=mysql_query("SELECT * FROM table WHERE link='$l'");
проверяет только по первой ссылке , по остальным не проверяет
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
29.12.2015, 14:57
Ответы с готовыми решениями:

Роблема вывода переменной из базы
Доброго времени суток! Парни есть вопрос. Почему таким образом результат не выводится из базы. mysql_query("SELECT...

Проблема вывода русского текста из базы.
Проблема как у многих в выводе русского текста из базы. Перечитал весь форум, рабочего ответа не нашел. Вся надежда на вас! Сайт...

Правильное форматирование после вывода из базы
Возникла проблема с форматированием текста: 1. ввожу текст в textarea и записываю в базу 2. вывожу набранный текст и получаю его, но не...

46
11 / 11 / 3
Регистрация: 23.01.2014
Сообщений: 295
29.12.2015, 18:52  [ТС]
Студворк — интернет-сервис помощи студентам
Xenox,
А как сделать что бы это всё было только в итоге выводило ещё из таблицы cont не только ссылки а ещё и id и другие колонки.
и всё это в ссылки которые отправят ид каждой ссылки в гет запросте
PHP
1
<a href='link.php?link=".$res["id"]."'>".$res["link"]."</a>
Добавлено через 20 минут
Xenox,
Скрипт выводит только 1 ссылку а если их много он не выводит в итоге
0
162 / 161 / 66
Регистрация: 28.06.2015
Сообщений: 576
29.12.2015, 19:15
Скрипт выводит только 1 ссылку а если их много он не выводит в итоге
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
<?php
$ret = $_SESSION["name"];
include('conf.php');
$quer = mysql_query("SELECT * FROM link WHERE id_user='$ret'")or die(mysql_error());
if(mysql_num_rows($quer)>0)
while($re = mysql_fetch_assoc($quer))
{
  $resul[] = $re['links'];
}
 
 
 
$query = mysql_query("SELECT * FROM cont ")or die(mysql_error());
if(mysql_num_rows($query)>0)
while($res = mysql_fetch_assoc($query))
{
  $result[] = $res['link'];
}
for ($i=0; $i < count($result); $i++) {
    for ($j=0; $j < count($resul); $j++) {
        if($result[$i] != $resul[$j]){
            $c[] = $result[$i];
        }
    }
}
echo "<pre>";
print_r($c);
echo "</pre>";
0
11 / 11 / 3
Регистрация: 23.01.2014
Сообщений: 295
29.12.2015, 19:32  [ТС]
Xenox, нельзя сделать так да?
А как сделать что бы это всё было только в итоге выводило ещё из таблицы cont не только ссылки а ещё и id и другие колонки.
и всё это в ссылки которые отправят ид каждой ссылки в гет запросте
PHPВыделить код

PHP
1
<a href='link.php?link=".$res["id"]."'>".$res["link"]."</a>
и опять вот так выводит
Array
(
[0] => www.site1.ru
[1] => www.site.ru
)

Добавлено через 8 минут
Xenox, умоляю вас помогите неделю уже думаю
0
576 / 514 / 253
Регистрация: 26.09.2010
Сообщений: 2,603
30.12.2015, 01:45
Цитата Сообщение от suhoi1993 Посмотреть сообщение
и опять вот так выводит
Array
(
[0] => www.site1.ru
[1] => www.site.ru
)
так вывод из-за
Цитата Сообщение от Xenox Посмотреть сообщение
echo "<pre>";
print_r($c);
echo "</pre>";
PHP
1
2
3
4
5
6
$query = mysql_query("SELECT * FROM cont ")or die(mysql_error());
if(mysql_num_rows($query)>0)
while($res = mysql_fetch_assoc($query))
{
  echo "<a href='link.php?link=".$res['id']."'>".$res["link"]."</a>";
}
0
11 / 11 / 3
Регистрация: 23.01.2014
Сообщений: 295
30.12.2015, 09:02  [ТС]
Виталюска, это я и сам знаю , мне нужна такая ссылка именно в конце моего скрипта
0
162 / 161 / 66
Регистрация: 28.06.2015
Сообщений: 576
30.12.2015, 10:10
Цитата Сообщение от suhoi1993 Посмотреть сообщение
Xenox, нельзя сделать так да?
Все можно сделать, нужно только немного подумать:
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
<?php
$ret = $_SESSION["name"];
include('conf.php');
$quer = mysql_query("SELECT * FROM link WHERE id_user='$ret'") or die(mysql_error());
while($re = mysql_fetch_assoc($quer))
{
  $resul[] = $re['links'];
}
 
$query = mysql_query("SELECT * FROM cont GROUP BY (link)") or die(mysql_error());
while($res = mysql_fetch_assoc($query))
{
    $result['id'] = $res['id'];
    $result['link'] = $res['link'];
}
 
$resul = array_unique($resul);
foreach ($result as $key => $iter) {
    //print_r($iter);
    for ($j=0; $j < count($resul); $j++) {
        if($iter['link'] != $resul[$j]){
            $findArray[$key]['id'] = $iter['id'];
            $findArray[$key]['link'] = $iter['link'];
        }
    }
}
foreach ($findArray as $iter) { ?>
    <a href='link.php?link="<?= $iter["id"] ?>" '><?= $iter["link"] ?></a>
<?php } ?>
0
11 / 11 / 3
Регистрация: 23.01.2014
Сообщений: 295
30.12.2015, 11:02  [ТС]
Xenox, вынес вам весь мозг, выводит ссыку только начало её должно выводить www.site.tu
а оно только w

Добавлено через 18 минут
Xenox,
Вообщем скрипт заключается в том:
1) Выводим таблицу link проверяем есть ли там юзер который в переменной $ret
если есть такой , выводим все его ссылки из поля links
заносим их в какой то массив или как оно по другому. именно все ссылки пусть их 100 или 1000.
2)выводим из таблицы cont все поля link где нет тех ссылок которые мы выдали из
links
3)Ссылки должны содержать get запросы в которых будут id и link, их мы передадим на страницу link.php
4)Если пользователя $ret нет в таблице link, то выводим ему все ссылки из таблицы cont
0
162 / 161 / 66
Регистрация: 28.06.2015
Сообщений: 576
30.12.2015, 11:14
Цитата Сообщение от suhoi1993 Посмотреть сообщение
, выводит ссыку только начало её должно выводить
Ниче не понятно, у вас вместо "www.site.tu" выводит "w" ?

Добавлено через 5 минут
У вас в id_user храниться имя пользователя или его id?

Добавлено через 6 минут
У вас в id_user храниться имя пользователя или его id?
Цитата Сообщение от suhoi1993 Посмотреть сообщение
3)Ссылки должны содержать get запросы в которых будут id и link, их мы передадим на страницу link.php
Тогда так
PHP/HTML
1
2
3
foreach ($findArray as $iter) { ?>
    <a href='link.php?id=<?= $iter["id"]  ?>&link=<?= $iter["link"] ?> '><?= $iter["link"] ?></a>
<?php } ?>
0
11 / 11 / 3
Регистрация: 23.01.2014
Сообщений: 295
30.12.2015, 11:15  [ТС]
Xenox, да вместо www.site.ru выводит w.
Пользователь находится в таблице link строка id_user
0
162 / 161 / 66
Регистрация: 28.06.2015
Сообщений: 576
30.12.2015, 11:15
P.S. сейчас у себя проверил выводит все корректно, и передает параметры тоже корректно
0
11 / 11 / 3
Регистрация: 23.01.2014
Сообщений: 295
30.12.2015, 11:17  [ТС]
Xenox, всё равно выводит w

Добавлено через 54 секунды
Xenox, в id_user хранится имя user
0
162 / 161 / 66
Регистрация: 28.06.2015
Сообщений: 576
30.12.2015, 11:18
Ок. тогда давайте проверим что у вас выведет так:
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
<?php
$ret = $_SESSION["name"];
include('conf.php');
$quer = mysql_query("SELECT * FROM link WHERE id_user='$ret'") or die(mysql_error());
while($re = mysql_fetch_assoc($quer))
{
  $resul[] = $re['links'];
}
 print_r($resul);
$query = mysql_query("SELECT * FROM cont GROUP BY (link)") or die(mysql_error());
while($res = mysql_fetch_assoc($query))
{
    $result['id'] = $res['id'];
    $result['link'] = $res['link'];
}
 print_r($result);
 exit;
$resul = array_unique($resul);
foreach ($result as $key => $iter) {
    //print_r($iter);
    for ($j=0; $j < count($resul); $j++) {
        if($iter['link'] != $resul[$j]){
            $findArray[$key]['id'] = $iter['id'];
            $findArray[$key]['link'] = $iter['link'];
        }
    }
}
foreach ($findArray as $iter) { ?>
    <a href='link.php?link="<?= $iter["id"] ?>" '><?= $iter["link"] ?></a>
<?php } ?>
Добавлено через 35 секунд
Там будет ошибка, но нужно посмотреть что в массивах
0
11 / 11 / 3
Регистрация: 23.01.2014
Сообщений: 295
30.12.2015, 11:27  [ТС]
Xenox, Array ( [0] => www.site.ru [1] => [2] => w ) Array ( [id] => 27 [link] => www.site1.ru )
0
162 / 161 / 66
Регистрация: 28.06.2015
Сообщений: 576
30.12.2015, 11:43
А вот так?
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
    $ret = $_SESSION["name"];
    include('conf.php');
    $quer = mysql_query("SELECT * FROM link WHERE id_user='$ret'") or die(mysql_error());
    while($re = mysql_fetch_assoc($quer))
    {
      $resul[] = $re['links'];
    }
    $query = mysql_query("SELECT * FROM cont GROUP BY (link)") or die(mysql_error());
    while($res = mysql_fetch_assoc($query))
    {
            $result[] = array(
                'id'        => $res['id'],
                'link'  => $res['link'],
            );
    }
    print_r($result);
    exit;
    $resul = array_unique($resul);
    foreach ($result as $key => $iter) {
        //print_r($iter);
        for ($j=0; $j < count($resul); $j++) {
            if($iter['link'] != $resul[$j]){
                $findArray[$key]['id'] = $iter['id'];
                $findArray[$key]['link'] = $iter['link'];
            }
        }
    }
    foreach ($findArray as $iter) { ?>
        <a href='link.php?id=<?= $iter["id"]  ?>&link=<?= $iter["link"] ?> '><?= $iter["link"] ?></a>
    <?php } ?>
Добавлено через 2 минуты
И сразу проверьте этот код, должен работать корректно
PHP/HTML
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
<?php
    $ret = $_SESSION["name"];
    include('conf.php');
    $quer = mysql_query("SELECT * FROM link WHERE id_user='$ret'") or die(mysql_error());
    while($re = mysql_fetch_assoc($quer))
    {
      $resul[] = $re['links'];
    }
    $query = mysql_query("SELECT * FROM cont GROUP BY (link)") or die(mysql_error());
    while($res = mysql_fetch_assoc($query))
    {
            $result[] = array(
                'id'        => $res['id'],
                'link'  => $res['link'],
            );
    }
    // print_r($result);
    // exit;
    $resul = array_unique($resul);
    foreach ($result as $key => $iter) {
        //print_r($iter);
        for ($j=0; $j < count($resul); $j++) {
            if($iter['link'] != $resul[$j]){
                $findArray[$key]['id'] = $iter['id'];
                $findArray[$key]['link'] = $iter['link'];
            }
        }
    }
    foreach ($findArray as $iter) { ?>
        <a href='link.php?id=<?= $iter["id"]  ?>&link=<?= $iter["link"] ?> '><?= $iter["link"] ?></a>
    <?php } ?>
0
11 / 11 / 3
Регистрация: 23.01.2014
Сообщений: 295
30.12.2015, 11:52  [ТС]
Xenox, у меня в таблице link есть ссылки www.site.ru www.site1.ru где id_user='user'
их всё ровно из cont выводит(

Добавлено через 2 минуты
Xenox,
вот пример моей базы link:
id |id_user |links|
1 |admin |www.site.ru|
2 |admin |www.site2.ru|

cont
id |link |name_id|
1 |www.site.ru |admin|
1 |www.site3.ru |admin|
0
162 / 161 / 66
Регистрация: 28.06.2015
Сообщений: 576
30.12.2015, 11:57
Ну это нужно запрос поменять:
PHP
1
$query = mysql_query("SELECT * FROM cont GROUP BY (link)") or die(mysql_error());
на
PHP
1
$query = mysql_query("SELECT * FROM cont WHERE name_id = $ret GROUP BY (link)") or die(mysql_error());
0
11 / 11 / 3
Регистрация: 23.01.2014
Сообщений: 295
30.12.2015, 12:05  [ТС]
Xenox, а чего name_id. его не нужно вообще трогать
0
162 / 161 / 66
Регистрация: 28.06.2015
Сообщений: 576
30.12.2015, 12:09
Цитата Сообщение от suhoi1993 Посмотреть сообщение
их всё ровно из cont выводит(
Я так понял что вам нужно выводить поле link из таблицы cont у определенного пользователя так?
0
11 / 11 / 3
Регистрация: 23.01.2014
Сообщений: 295
30.12.2015, 12:17  [ТС]
Xenox,
да и чтобы ссылки link выводились по запросу из таблицы link
0
162 / 161 / 66
Регистрация: 28.06.2015
Сообщений: 576
30.12.2015, 12:23
Ну так для таблицы link у вас есть условие:
PHP
1
$quer = mysql_query("SELECT * FROM link WHERE id_user='$ret'") or die(mysql_error());
А для таблици cont
Я вам выше написал условие что бы для определенного пользователя брались ссылки
Даже наверно лучше так:
PHP
1
$query = mysql_query("SELECT * FROM cont WHERE name_id = '$ret' GROUP BY (link)") or die(mysql_error());
Потому что у вас храниться имя в поле name_id.. Вообще лучше идентифицировать пользователей по id

Добавлено через 3 минуты
Или поля называть в зависимости что они хранят - name_id - должно хранть id имени, id_user - ид юзера, name_user - имя пользователя, т.к. если ваш код будет поддерживать кто то другой, он будет вас проклинать за такие названия полей
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
30.12.2015, 12:23

Правила вывода связанных данных из базы
Вопрос немного теоретического характера. Пример. Имеем, две таблицы. Users и Purchases (Пользователи и покупки). Два класса...

Базы Данных. Кодировка ввода/вывода.
Здравствуйте! Последнее время на форуме часто проскакивает вопрос на тему &quot;Кодировка в MySQL&quot; или нечто подобное. Создано множество...

Проверка открытия файла вывода
#include &lt;iostream&gt; #include &lt;fstream&gt; #include &lt;stdio.h&gt; #include &lt;string&gt; using namespace std; int main () { cout...

Нет вывода из базы данных PHP из MYSQL
Добрый день не могу получить данные из таблицы код $query2 = sprintf('SELECT value FROM '.DB_PREFIX.'setting WHERE \'key\' =...

Скрипт вывода пунктов из базы данных на pdo
Здравствуйте, начала мучить pdo и возник такой вопрос: как проверить прошел ли запрос или нет $result_podcat =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
40
Ответ Создать тему
Новые блоги и статьи
Программа опроса у.з. расходомера SLS-720F
Argus19 02.09.2026
Программа опроса у. з. расходомера SLS-720F Программа опрашивает один раз в минуту три ультразвуковых расходомера SLS-720F через интерфейс RS-485 по протоколу Modbus RTU. Опрашиваются регистры. . .
Hyper-V: Компьютер должен поддерживать доверенный платформенный модуль 2.0.
Maks 31.08.2026
При установке Windows 11 на виртуальную машину Hyper-V 2-го поколения вылезла такая ошибка: Решение: в параметрах виртуальной машины, в разделе "Безопасность" (Security) активировать флаг. . .
Архитектура биовида Стива в Майнкрафте: Зачем бонобо кубический каннибализм
anaschu 30.08.2026
Кубический Вагинокапитализм в Minecraft: Математический инвариант ОДУ и рок Стивов-бонобо Главная задача разработанной «Модели Всего» — наглядно продемонстрировать наличие системной «судьбы». . .
Оттачиваю умение писать js программы.
russiannick 30.08.2026
Проектом выходного дня стало написание Книги шифров Виженера. Итогом стала версия 200, синий туман. Синий туман назван так, потому что замораживает текст под собой. Нажатие синих кнопок управляют. . .
мат медиц модель 30. презентация проекта
anaschu 27.08.2026
хоп хоп хоп хидахоп, а я кладую))
Как у меня протекала болезнь
zorxor 27.08.2026
Здравствуйте, друзья! Эта запись блога предназначена именно для вас - для моих дорогих друзей, которые знали меня лично. Чтобы ответить на вопрос - а что же со мной произошло на самом деле? Я учился. . .
Нашел вот забавное видео о измерениях. Лучшее что я видел на эту тему
kumehtar 26.08.2026
ILETXiw9bMQ Основная суть и тезисы по измерениям: 0D (Нулевое измерение): точка, не имеющая длины, ширины, высоты или объема. Объект не может перемещаться в 0D. 1D (Первое измерение):. . .
[EasyBuilder Pro] Памятка по разработке для панелей Weintek
ФедосеевПавел 26.08.2026
Памятка по разработке для панелей Weintek ВВЕДЕНИЕ Ранее, при реализации проектов основное внимание уделял разработке управляющей программы для контроллера, а панели оператора доставалось время. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru