Trust
Продвинутый
Дата регистрации:
03.11.2011 17:04:04
Сообщений: 67
<?php
session_start();
include ("bd.php"
;
$login = $_SESSION['login'];
$password = $_SESSION['password'];
$result2 = mysql_query("SELECT
*
FROM
users
WHERE
login='$login'
AND password='$password'
AND activation='1'"
,$db);
$myid = mysql_fetch_array($result2);
$result4 = mysql_query("SELECT
idkomy
FROM
friend
WHERE
idot='$myid[id]'
AND drug='1'",
$db);
if (!$result4)
{
exit("Произошла ошибка!"
;
}
elseif (mysql_num_rows($result4) > 0)
{
$miidfriend = mysql_fetch_array($result4);
do
{
echo " Пользователь $miidfriend[idkomy] ";
}
while ($miidfriend = mysql_fetch_array($result4));
}
else
{
exit("В таблице нет записей!"
;
}
//************Вывод данных**************
$result5 = mysql_query("SELECT
*
FROM
users
WHERE
id='$miidfriend[idkomy]'
", $db);
if (!$result5)
{
exit("Произошла ошибка!"
;
}
elseif (mysql_num_rows($result5) > 0)
{
$idmyfriend = mysql_fetch_array($result5);
do
{
print_r ("
Пользователь № %s <br>
Имя :
",$idmyfriend['id'],$idmyfriend['name']) ;
}
while ($idmyfriend = mysql_fetch_array($result5));
}
else
{
exit("У вас нет друзей, пока..."
;
}
//***********Вывод данных**************
mysql_close();
?>
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Какой именно запрос не выводит записи? Здесь их несколько. Покажите самый первый, который ничего не выводит. Чтобы это определить, каждый массив, который получается, выведите через print_r().
Trust
Продвинутый
Дата регистрации:
03.11.2011 17:04:04
Сообщений: 67
В том то и дело, что те переменные которые нужны выводит а вот в запросе почему-то не хотят работать=(((
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Данные нужно подставлять так: "SELECT ... id=".$array["id"]." ... ";
int
Освоившийся
Дата регистрации:
26.10.2011 05:32:04
Сообщений: 32
Trust
Не выводит потому что у тебя переменные в апострофах.
login='$login'
AND password='$password' Что бы взять значение переменной нужно поменять их на двойные кавычки или сделать так как показал Михаил.
Trust
Продвинутый
Дата регистрации:
03.11.2011 17:04:04
Сообщений: 67
так ведь выше я подставляю $result4 = mysql_query("SELECT idkomy FROM friend WHERE idot='$myid[id]' AND drug='1'", $db);
все же ведь работает! почему не хочет работат последний запрос?
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
А зачем Вы используете do-while? Используйте цикл while, потому что у Вас сначала используется переменная, и только потом создаётся.
Trust
Продвинутый
Дата регистрации:
03.11.2011 17:04:04
Сообщений: 67
Не понял как вы хотите ... но все же... до этого ведь все работает нормально, и в запрос подставляется и все вытаскивает отлично! Почему же тут не хочет?
Admin
Администратор
Дата регистрации:
27.05.2010 21:23:42
Сообщений: 3063
Вы не понимаете разницы между do-while и while? Если это так, то забудьте пока вообще про SQL. Вот здесь про циклы почитайте: http://myrusakov.ru/cikly-javascript.html (для PHP то же самое).
int
Освоившийся
Дата регистрации:
26.10.2011 05:32:04
Сообщений: 32
Создай простейший скрипт.
<?php
$login="petrovich";
echo '$login';
?>
Что ты увидел?? Ты выводишь имя переменной $login, а не ее значение. Что тут не понятно?
Да не в жизнь у тебя не будет работать скрипт если ты отправляешь в запрос переменную как имя, а не как адрес на значение! Я не поверю что у тебя этот скрипт работает.