Форум программистов, компьютерный форум, киберфорум
Наши страницы
PHP: базы данных
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.50/6: Рейтинг темы: голосов - 6, средняя оценка - 4.50
alexmark5
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 37
1

Как и что прописать что бы вывести все значения?

26.06.2013, 19:50. Просмотров 1180. Ответов 15
Метки нет (Все метки)

Что мне прописать что бы вывести все значения "$name"; из таблицы log_t при условии ip = '".$ip."' .
У меня выводит только один name, а мне нужно все!!!


PHP
1
2
3
4
5
$get_name = mysql_query("SELECT name FROM log_t WHERE ip = '".$ip."' ");  
$row = mysql_fetch_array($get_name);
$name = $row['name'];
 
print"$name";
Добавлено через 4 минуты
Можно так сделать, но а если name штук 40 и больше
PHP
1
2
3
4
5
$get_name2 = mysql_query("SELECT name FROM log_t WHERE ip = '".$ip."' AND '$name' != name ");  
$row2 = mysql_fetch_array($get_name2);
$name2 = $row['name'];
 
print"$name";  print"$name2";
0
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
26.06.2013, 19:50
Ответы с готовыми решениями:

Что нужно прописать, что бы в таблицу можно было ФИО добавить?
Вот sql запрос...CREATE TABLE `tz_members` ( `id` int(11) NOT NULL auto_increment, `usr`...

Что надо прописать в батон , что бы с мемо1 вывести в мемо2 только числа , что есть в мемо1
Что надо прописать в батон , что бы с мемо1 (который состоит с текста, символов, знаков"+"и"-")...

Удалить из списка все четные по значению элементы. Что прописать в goal?
есть задание:Удалить из списка все четные по значению элементы есть решение DOMAINS list =...

Что нужно прописать в файле .htacess что бы запретить скачивание HTML
Сразу хочу извиниться если добавил тему не туда. Доброго времени суток. У меня такая проблема с...

Ругается, что не все ветви кода возвращают значения, как поправить?
public static int BinarySearch(int array, int value) { int low = 0; ...

15
AndreyDyakonov
122 / 120 / 7
Регистрация: 21.04.2013
Сообщений: 615
26.06.2013, 19:51 2
в sql не используются двойные кавычки

Добавлено через 47 секунд
уточню:
Цитата Сообщение от alexmark5 Посмотреть сообщение
при условии ip = '".$ip."' .
1
alexmark5
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 37
26.06.2013, 20:05  [ТС] 3
PHP
1
'$ip' = ip
спасибо! но это не решило мою проблему

Добавлено через 6 минут
Как вывести все name из таблицы???

ip name
10.1.4 g
10.1.4 k
20.8.4 g

print"$name"; print"g и k и т.д.";
0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16768 / 6655 / 869
Регистрация: 12.06.2012
Сообщений: 19,894
Завершенные тесты: 1
26.06.2013, 20:45 4
Работа с БД MySQL ?
Цитата Сообщение от alexmark5 Посмотреть сообщение
SQL
1
SELECT name FROM log_t WHERE ip = '".$ip."' AND '$name' != name
SQL
1
SELECT `name` FROM `log_t` WHERE `ip` = '".$ip."' AND `name` != '$name'
Цитата Сообщение от alexmark5 Посмотреть сообщение
PHP
1
2
3
4
$row = mysql_fetch_array($get_name);
$name = $row['name'];
 
print"$name";
PHP
1
2
3
4
while($row = mysql_fetch_assoc($get_name))
{
    echo $row['name'];
}
1
26.06.2013, 20:45
alexmark5
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 37
26.06.2013, 22:41  [ТС] 5
Не работает
PHP
1
2
3
4
5
6
7
$get_name = "SELECT 'name' FROM 'log_t' WHERE 'ip' = '".$ip."' ";
while($row = mysql_fetch_assoc($get_name))
{
    echo $row['name'];
$name = $row['name'];
print"$name"; 
}
0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16768 / 6655 / 869
Регистрация: 12.06.2012
Сообщений: 19,894
Завершенные тесты: 1
26.06.2013, 22:45 6
Цитата Сообщение от alexmark5 Посмотреть сообщение
Не работает
во-первых, вы поленились почитать тему по ссылке, а зря. Во-вторых, сравните запрос, который написал я и который написали вы (подсказка - апострофы). И в-третьих 7 и 8 строчки вашего кода лишние
0
alexmark5
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 37
26.06.2013, 22:47  [ТС] 7
КАК СДЕЛАТЬ ЧТО БЫ print"$name"; ВЫВОДИЛ ВСЕ ЗНАЧЕНИЯ КОТОРЫЕ ЕСТЬ В ТАБЛИЦЕ log_t, А НЕ ТОЛЬКО ОДНО???
PHP
1
2
3
4
5
$get_name = mysql_query("SELECT name FROM log_t WHERE ip = '".$ip."' ");  
$row = mysql_fetch_array($get_name);
$name = $row['name'];
 
print"$name";
0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16768 / 6655 / 869
Регистрация: 12.06.2012
Сообщений: 19,894
Завершенные тесты: 1
26.06.2013, 22:48 8

Не по теме:

:facepalm:


ПРОЧИТАТЬ СООБЩЕНИЯ ВЫШЕ ВНИМАТЕЛЬНЕЕ
0
alexmark5
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 37
26.06.2013, 23:16  [ТС] 9
Цитата Сообщение от KOPOJI Посмотреть сообщение
во-первых, вы поленились почитать тему по ссылке, а зря.
почти Почитал))):
PHP
1
2
3
$res = mysql_query("SELECT * FROM `log_t` ");
$row = mysql_fetch_array($res);
print_r($row);
Вывело только 1 строку, а не все строки из таблицы log_t???

и еще вопрос не по теме: нужно ставить такие кавычки ` или такие ' или нету разницы???

дочитываю))
0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16768 / 6655 / 869
Регистрация: 12.06.2012
Сообщений: 19,894
Завершенные тесты: 1
26.06.2013, 23:26 10
Цитата Сообщение от alexmark5 Посмотреть сообщение
нужно ставить такие кавычки ` или такие ' или нету разницы???
Цитата Сообщение от KOPOJI Посмотреть сообщение
зачем я название таблицы заключил в косые апострофы? А вот зачем - если название поля или таблицы содержит пробелы, знаки минусов или еще какие-то "левые" - то произойдет ошибка в запросе.
То есть, я советую при запросе всегда указывать mysql-ные названия таблиц и полей в обратных косых апострофах (клавиша тильда, под ESC - буква ё на англ. раскладке)
..........
Цитата Сообщение от KOPOJI Посмотреть сообщение
Обратите внимание, само значение поиска я указал в одинарных апострофах (не косых!!!). И вам я также советую, по аналогичной причине с косыми - если будет минус или пробел стоять, получится ошибка, поэтому лучше сразу привыкайте так делать.

Цитата Сообщение от alexmark5 Посмотреть сообщение
Вывело только 1 строку, а не все строки из таблицы log_t???
Цитата Сообщение от KOPOJI Посмотреть сообщение
в массиве $row у нас будут содержаться значения из нашей таблицы. Если их несколько должно быть (записей), то необходимо выводить их в цикле, потому что fetch-функции считывают построчно. Есть несколько способов вывода в цикле, через for, do-while, foreach.. На мой взгляд, лучший вариант - цикл while.
Внимание!!! Не используйте цикл do - while для вывода, если этого жестко не требуют условия!!
PHP
1
2
3
4
$res = mysql_query("SELECT * FROM `test`");
while($row = mysql_fetch_assoc($res)) {
print_r($row);
}
и здесь на каждой итерации цикла (на каждом новом проходе цикла) переменной $row будет присваиваться массив с новыми значениями
Повторюсь - все это уже написано, нужно лишь уделить 10-15 минут на чтение. К тому же, выше я уже написал что необходимо сделать - сцитированное необходимо заменить на код под цитатой.
1
alexmark5
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 37
26.06.2013, 23:39  [ТС] 11
А как правильно использовать полученый результат в другом запросе?(если это возможно)


PHP
1
2
3
4
5
6
7
8
$res = mysql_query("SELECT 'name' FROM 'log_t' WHERE 'ip' = '".$ip."'  ");
while ($row = mysql_fetch_array($res));
 
 
 
$sql = mysql_query("SELECT  'url' FROM 'log_t2' WHERE  '$row' != 'name' LIMIT 1");   
    $row4 = mysql_fetch_array($sql);
    $url4 = $row4['url'];

PHP
1
2
3
4
5
6
{
print_r($row);
$sql = mysql_query("SELECT  'url' FROM 'log_t2' WHERE  '$row' != 'name' LIMIT 1");   
    $row4 = mysql_fetch_array($sql);
    $url4 = $row4['url'];
}
0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16768 / 6655 / 869
Регистрация: 12.06.2012
Сообщений: 19,894
Завершенные тесты: 1
26.06.2013, 23:43 12
Цитата Сообщение от alexmark5 Посмотреть сообщение
А как правильно использовать полученый результат в другом запросе?
вы сначала исходный запрос верно напишите.
Цитата Сообщение от alexmark5 Посмотреть сообщение
PHP
1
WHERE '$row' != 'name'
повторяться не хочу.. Что творится в подобном условии. Только у вас еще лучше, вместо "митцубиси", как в той теме, у вас подставляется массив.

Добавлено через 1 минуту
Цитата Сообщение от alexmark5 Посмотреть сообщение
while ($row = mysql_fetch_array($res));
Благодаря наличию точки с запятой в конце строки (кстати, откуда вы ее взяли?), прочитать это можно как-то так
"Пока есть данные в БД, берем эти данные и ... и ничего не делаем."
1
alexmark5
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 37
27.06.2013, 07:57  [ТС] 13
А как сравнить массив $row если у него несколько значений в mysql запросе???
Тоесть:
PHP
1
FROM log_t2 WHERE  `name` != '$row'
Ничего не получается.

А если беру $rowname = $row['name'];
PHP
1
FROM log_t2 WHERE  `name` != '$rowname'
то сравнивает только одно значение из нескольких которые есть в $row

PHP
1
2
3
4
5
6
7
8
9
10
$res = mysql_query("SELECT `name` FROM `log_t` WHERE `ip` = '".$ip."'  ");
while ($row = mysql_fetch_array($res)) {
$rowname = $row['name'];
}
 
//$row имеет несколько значений name(например: name1 = www1, name2 = www2 и т.д.)
 
$sql444 = mysql_query("SELECT `id`, `url`, `name` FROM log_t2 WHERE  `name` != '$rowname'   ");   
    $row4 = mysql_fetch_array($sql444);
    $url4 = $row4['url'];

PHP
1
$sql444 = mysql_query("SELECT `id`, `url`, `name` FROM `log_t2` WHERE `name` != '$row[name]'  ");
0
KOPOJI
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16768 / 6655 / 869
Регистрация: 12.06.2012
Сообщений: 19,894
Завершенные тесты: 1
27.06.2013, 08:04 14
в $rowname будет храниться последнее значение из цикла. хотите искать по каждому значению - значит перемещайте второй запрос внутрь цикла
0
alexmark5
0 / 0 / 0
Регистрация: 30.05.2013
Сообщений: 37
27.06.2013, 09:57  [ТС] 15
ТАК???? Но тогда прийдется снова внутри вставлять запрос и так до бесконечности???

PHP
1
2
3
4
5
6
7
8
9
10
11
$res = mysql_query("SELECT `name` FROM `log_t` WHERE `ip` = '".$ip."'  ");
while ($row = mysql_fetch_array($res)) {
$rowname = $row['name'];
}
 
//$row имеет несколько значений name(например: name1 = www1, name2 = www2 и т.д.)
 
  
$sql444 = mysql_query("SELECT `id`, `url`, `name` FROM log_t2 WHERE  `name` <$sql444 = mysql_query("SELECT `id`, `url`, `name` FROM log_t2 WHERE  `name` != '$rowname'   "); > '$rowname'   ");   
    $row4 = mysql_fetch_array($sql444);
    $url4 = $row4['url'];
Добавлено через 3 минуты
2 вариант:
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
$res = mysql_query("SELECT `name` FROM `log_t` WHERE `ip` = '".$ip."'  ");
while ($row = mysql_fetch_array($res)) {
$rowname = $row['name'];
}
 
//$row имеет несколько значений name(например: name1 = www1, name2 = www2 и т.д.)
 
  
$sql444 = mysql_query("SELECT `id`, `url`, `name` FROM log_t2 WHERE  `name` != '$rowname'   ");   
    $row4 = mysql_fetch_array($sql444);
    $url4 = $row4['url'];
 
 
$sql555 = mysql_query("SELECT `id`, `url`, `name` FROM log_t2 WHERE  `name` <$row4> '$rowname'   ");   
    $row5 = mysql_fetch_array($sql555);
    $url5 = $row4['url'];


Добавлено через 1 час 40 минут
Цитата Сообщение от KOPOJI Посмотреть сообщение
в $rowname будет храниться последнее значение из цикла. хотите искать по каждому значению - значит перемещайте второй запрос внутрь цикла
а как переместить второй запрос внутрь цикла???
0
Nikolas333
8 / 8 / 0
Регистрация: 19.06.2013
Сообщений: 24
27.06.2013, 12:39 16
Цитата Сообщение от alexmark5 Посмотреть сообщение
а как переместить второй запрос внутрь цикла???
Может быть нужно поместить его внутри операторных скобок цикла while?

Читать тут:
http://on-line-teaching.com/php/struct.structs.htm
0
27.06.2013, 12:39
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
27.06.2013, 12:39

Как вывести все, что есть в консоли
Вывел я в консоль &quot;Hello World&quot;, а потом &quot;CyberForum&quot;. Могу ли я получить в виде строки все, что я...

Подскажите пожалуйста, как прописать что бы работало
Здравствуйте! Вообщем нужен скрипт что бы при нажатии на кнопку рандомно выбиралась пара(текст +...

Как прописать то, что должно делать событие?
Как прописать то, что должно делать событие?


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

Или воспользуйтесь поиском по форуму:
16
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2019, vBulletin Solutions, Inc.
Рейтинг@Mail.ru