X   Сообщение сайта
(Сообщение закроется через 3 секунды)



 

Здравствуйте, гость (

| Вход | Регистрация )

3 страниц V   1 2 3 >
Открыть тему
Тема закрыта
> Данные из базы не выводятся!Как быть!?
Panich
Panich
Topic Starter сообщение 24.5.2011, 14:14; Ответить: Panich
Сообщение #1


Позволю себе обнаглеть(раз уж на этом сайте так отзывчивы к чужим проблемам:))
Вот скрипт страницы пользователя:
[PHP]<?php session_start(); ?>
<?php include ("bd.php"); ?>
<?php
if (isset($_COOKIE['auto']) and isset($_COOKIE['login']) and isset($_COOKIE['pass']))
{
if ($_COOKIE['auto'] == 'yes')
{
$_SESSION['pass'] = strrev(md5(mysql_real_escape_string($_COOKIE['pass'])))."cR9i7Z";
$_SESSION['login'] = mysql_real_escape_string($_COOKIE['login']);
$_SESSION['id'] = mysql_real_escape_string($_COOKIE['id']);
if (isset($_GET['id']))
{
$id = $_GET['id'];
}
else
{
header("Location:http://localhost/znakomstva/index.php");
}
if (!preg_match("|^[\d]+$|", $id))
{
exit("<p>Неверный формат запроса! Проверьте URL</p>");
}
if (!empty($_SESSION['login']) and !empty($_SESSION['pass']))
{
$login = mysql_real_escape_string($_SESSION['login']);
$pass = mysql_real_escape_string($_SESSION['pass']);
$result = mysql_query("SELECT id FROM users WHERE login='$login' AND pass='$pass'",$db);
$myrow = mysql_fetch_array ($result);
if (empty($myrow['id']) or $myrow['id']=='')
{
header("Location:http://localhost/znakomstva/index.php");
}
}
else
{
header("Location:http://localhost/znakomstva/index.php");
}
$result1 = mysql_query("SELECT name FROM users WHERE id='$id'",$db);
$myrow1 = mysql_fetch_array($result1);
if (empty($myrow1['name']))
{
exit("Пользователя не существует! Возможно он был удален.Обратитесь в службу технической поддержки по адресу электронной почты bv@list.ru");
}
else
{
page_header($myrow1['name']);
}
}
}
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251">
<meta name="title" content="Быстрые встречи,мгновенные знакомства">
<meta name="keywords" content="Встречи,знакомства,любовь,познакомиться,встретиться,он,она">
<meta name="description" content="Сайт для тех,кто хочет встретиться без долгой переписки">
<link href="../znakomstva/css/css_menu.css" rel="stylesheet" type="text/css">
<link href="../znakomstva/css/jquery-ui.css" rel="stylesheet" type="text/css"/>
<link href="../znakomstva/css/style.css" rel="stylesheet" type="text/css" media="screen"/>
<script src="../znakomstva/js/jquery.js" type="text/javascript"></script>
<script src="../znakomstva/js/myscripts.js" type="text/javascript"></script>
<script src="../znakomstva/js/jquery.validationEngine.js" type="text/javascript"></script>
<script src="../znakomstva/js/jquery-ui-1.8.12.custom.min.js" type="text/javascript"></script>
<script src="../znakomstva/js/jquery.min.js" type="text/javascript"></script>
<script src="../znakomstva/js/jquery-ui.min.js" type="text/javascript"></script>
</head>
<body>
<div class="maindiv">
<table border="0" cellspacing="0" cellpadding="0">
<tr>
<!-- ШАПКА -->
<td colspan="3">
<div id="forheader">
<img src="img_index/heder.png" alt="Хедер" title="Шапка сайта"/>
</div>
</td>
</tr>
<div id="forbody">
<tr>
<!-- ЛЕВЫЙ БЛОК -->
<td valign="top" rowspan="2">
<?php
include ("bd.php");
$result4 = mysql_query("SELECT * FROM users WHERE login='$login' LIMIT 1", $db)or die("Ошибка в запросе: " . mysql_error());
$myrow4 = mysql_fetch_array ($result4);
if (empty($myrow4['avatar']))
{
$avatar = "../znakomstva/files/avatars/net-avatara.jpg";
}
else
{
$myrow1['avatar']=$avatar;
}
$myrow1['id']=$id;
$myrow1['name']=$name;
$myrow1['pol']=$pol;
$myrow1['vozr_namber']=$vozr_namber;
$myrow1['vozr_mouns']=$vozr_mouns;
$myrow1['vozr_year']=$vozr_year;
//три верхних переменных преодразую в возраст двоичным числом
$myrow1['sity']=$sity;
$myrow1['pass']=$pass;
$myrow1['login']=$login;
//взять число,месяц и год рождения,потом перевести эти значения в двоичный код и выводить на странице пользователя после имени изменив свойствами размер и цвет!Имя сделать более заметное
$HTML='<table id="for_tabel_reg">
<tr>
<td>'.$sity.'</td>
</tr>
<tr>
<td>
<strong class="name">'.$name.' '.$age.'</strong>
</td>
</tr>
<tr>
<td>
<a><img class="img" alt="" src="'.$avatar.'"></a>
</td>
</tr>
</table>';
print $HTML;
?>
<!-- сделать что бы в меню первая вкладка тоже была закрыта как остальные -->
<div id="accordion">
<h3><a href="#">Мои предложения</a></h3>
<div><p>вот тут 1 цикл находится!</p></div>
<h3><a href="#">Мне предложили</a></h3>
<div><p>вот тут 2 цикл находится!</p></div>
<h3><a href="#">Поиск предложений</a></h3>
<div><p>вот тут 3 цикл находится!</p></div>
<h3><a href="#">Согласились</a></h3>
<div><p>вот тут 4 цикл находится!</p></div>
</div>
</td>
<td>
<!-- МЕНЮ В КВЕРИ -->
<div class="content">
<ul id="sdt_menu" class="sdt_menu">
<li>
<a href="#">
<img src="images/2.jpg" alt=""/>
<span class="sdt_active"></span>
<span class="sdt_wrap">
<span class="sdt_link">МОЯ СТРАНИЦА</span>
<span class="sdt_descr">переход на свою страницу</span>
</span>
</a>
</li>
<li>
<a href="#">
<img src="images/1.jpg" alt=""/>
<span class="sdt_active"></span>
<span class="sdt_wrap">
<span class="sdt_link">ПОИСК</span>
<span class="sdt_descr">поиск предложений</span>
</span>
</a>
<div class="sdt_box">
<a href="#">изменить имя</a>
<a href="#">изменить возраст</a>
<a href="#"> изменить логин</a>
<a href="#"> изменить пароль</a>
<a href="#"> изменить город</a>
<a href="#"> изменить фото</a>
</div>
</li>
<li>
<a href="#">
<img src="images/3.jpg" alt=""/>
<span class="sdt_active"></span>
<span class="sdt_wrap">
<span class="sdt_link">ГЛОБАЛЬНЫЕ ВСТРЕЧИ</span>
<span class="sdt_descr">поиск отречённых предложений</span>
</span>
</a>
</li>
</ul>
</div>
</td>
<td valign="top" width="290" rowspan="2">
<!-- ПРАВЫЙ БЛОК -->
<?php
if (!empty($_SESSION['login']) and !empty($_SESSION['pass']))
{
echo "<h5>РЯДОМ НАХОДЯТСЯ</h5>";
include ("bdreklama.php");
$result = mysql_query("SELECT * FROM reklama WHERE metro='$vihino'",$db);
$myrow = mysql_fetch_array($result);
while ($myrow = mysql_fetch_array($result))
{
printf("<table width='240' border='0' align='center' class='bordered'>
<thead align='center'>
<tr>
<th colspan='2'>
<p><strong><h4>%s</h4></strong></p>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<img alt='Фото местности' src='../foto_reklama/....jpg'>
</td>
<td>
<a href='%s'>%s</a>
<p>Телефон:%s</p>
<p>Средняя цена:%s</p>
</td>
</tr>
<tr>
<td colspan='2'>
<p class='rek'>%s</p>
<p class='rek'>%s</p>
</td>
</tr>
</tbody>
</table>", $myrow['nazvanie'], $myrow['syte_1'], $myrow['syte'], $myrow['telefon'], $myrow['cena'], $myrow['adress'], $myrow['text']);
}
}
else
{
echo("Вы зашли на сайт");
}
?>
</td>
</tr>
<tr>
<td height="455">
<!-- ОСНОВНАЯ КАРТА -->
<img src='img_index/moscow.jpeg' alt='Согласились' usemap="#Map">
<map name="map">
<area shape="poly" coords="""10,20,82,90" href="____.html" alt="vihino" coords->
<!-- и так для каждой точки-ссылки -->
</map>
</td>
</tr>
<tr>
<!-- ОСНОВАНИЕ -->
<td colspan="3">&nbsp;</td>
</tr>
</div>
</table>
</div>
</body>
</html>[/PHP]
Та часть где производится вывод данныхх зарегистрированного пользователя с его данными почему-то не появляется ни имени,ни города,ни возроста и вместо аватара изображение"нет аватара"!
Соединение с базой данных происходит(по крайней мере ошибой не выдайт):
[PHP]<?php
$dbname="users";
$dbhost="localhost";
$dbuser="panich07";
$dbpass="070CFItymrf";
$db = mysql_connect ($dbhost,$dbuser,$dbpass);
if (!$db)
{
exit("Извините за временные неудобства!В настоящий момент сервер базы данных не доступен, поэтому корректное отображение страницы невозможно.Попробуйте посетить сайт позднее!");
}
mysql_select_db ("user",$db);
if (!@mysql_select_db ("user",$db))
{
exit("Извините за временные неудобства!В настоящий момент база данных не доступна, поэтому корректное отображение страницы невозможно.Попробуйте посетить сайт позднее!");
}
?>[/PHP]
В чём проблема с выводом данных?Почему не выводятся данные пользователя!
Впрочем таже проблема и с выводом в цикле рекламы(в этом скрипте есть ближе к концу):
[PHP]<?php
$dbname="users";
$dbhost="localhost";
$dbuser="panich07";
$dbpass="070CFItymrf";
$dbrek = mysql_connect ($dbhost,$dbuser,$dbpass);
mysql_select_db ("reklama",$dbrek);
if (!$dbrek)
{
echo("Этот сайт!");
}
mysql_select_db("user",$dbrek);
if (!@mysql_select_db ("user",$dbrek))
{
exit("Этот сайт!");
}
?>[/PHP]
И того:
1.Не воводятся данные пользователя.
2.Не воводится реклама в цикле.
Как же быть,как быть...)))
0
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
alexdrob
alexdrob
сообщение 24.5.2011, 14:47; Ответить: alexdrob
Сообщение #2


Или я не понял вашего кода, или вы тут наоборот понаписали
[PHP]$result4 = mysql_query("SELECT * FROM users WHERE login='$login' LIMIT 1", $db)or die("Ошибка в запросе: " . mysql_error());
$myrow4 = mysql_fetch_array ($result4);
if (empty($myrow4['avatar']))
{
$avatar = "../znakomstva/files/avatars/net-avatara.jpg";
}
else
{
$myrow1['avatar']=$avatar;
}
$myrow1['id']=$id;
$myrow1['name']=$name;
$myrow1['pol']=$pol;
$myrow1['vozr_namber']=$vozr_namber;
$myrow1['vozr_mouns']=$vozr_mouns;
$myrow1['vozr_year']=$vozr_year;
//три верхних переменных преодразую в возраст двоичным числом
$myrow1['sity']=$sity;
$myrow1['pass']=$pass;
$myrow1['login']=$login;[/PHP]

вы получили в 1ой строке результат запроса
во второй в переменную $myrow4 вы получили результат запроса в виде массива.
а потом в массив $myrow1 вы заносите данные, не понятно откуда.
Откуда берутся $avatar, $pol .... и остальные?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Panich
Panich
Topic Starter сообщение 24.5.2011, 15:20; Ответить: Panich
Сообщение #3


Ох!Тут не правильно передал!Заносится всё в "$myrow4" а не в "$myrow1" конечно же!
А все это значения бирутся из базы данных "users" с помощью запроса:"SELECT * FROM".

alexdrob, по пыводу рекламы есть предположения?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
P0ZiTR0N
P0ZiTR0N
сообщение 24.5.2011, 19:05; Ответить: P0ZiTR0N
Сообщение #4


[PHP]...
<td>'.$sity.'</td>
...[/PHP]
$sity = 0: $myrow1['sity']=$sity; - вы присваиваете значение $sity массиву myrow1 ключу 'sity'. Ранее значение $sity не задавалось, а значит оно null. Правильней будет
[PHP]...
$sity = $myrow1['sity'];
//или
$sity = $myrow4['sity'];
...[/PHP]
и т.д.
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
P0ZiTR0N
P0ZiTR0N
сообщение 24.5.2011, 19:12; Ответить: P0ZiTR0N
Сообщение #5


(Panich @ 24.5.2011, 17:14) *
Не воводится реклама в цикле.

Попробуйте после и/или перед
[PHP]while ($myrow = mysql_fetch_array($result))
{ [/PHP]
добавить
[PHP]print_r ($myrow);[/PHP]
и посмотреть результат - что в массиве
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Panich
Panich
Topic Starter сообщение 25.5.2011, 10:42; Ответить: Panich
Сообщение #6


P0ZiTR0N,попробовал как Вы сказали:
Сначало присвоил переменным значения,которые вытащил из базы данных
[PHP]$sity = $myrow4['sity']; [/PHP]
Потом осуществил вывод
[PHP]<td>'.$sity.'</td> [/PHP]
Но ничего не изменилось!На странице пользователя выводится картинка-заместитель(нет-аватара) и больше ничего!Такое ощущение,что он не вытаскивает переменные из базы.

Вы писали попробовать
[PHP]print_r ($myrow);[/PHP]
Этим выражением нужно полностью заменить цикл или вписать после строчки
[PHP]while ($myrow = mysql_fetch_array($result)) [/PHP]
и при этом не указывать
[PHP]printf("<table width='240' border='0' align='center' class='bordered'>
<thead align='center'>
<tr>
<th colspan='2'>
<p><strong><h4>%s</h4></strong></p>
</th>
</tr>
</thead>
<tbody>
<tr>
<td>
<img alt='Фото местности' src='../foto_reklama/....jpg'>
</td>
<td>
<a href='%s'>%s</a>
<p>Телефон:%s</p>
<p>Средняя цена:%s</p>
</td>
</tr>
<tr>
<td colspan='2'>
<p class='rek'>%s</p>
<p class='rek'>%s</p>
</td>
</tr>
</tbody>
</table>", $myrow['nazvanie'], $myrow['syte_1'], $myrow['syte'], $myrow['telefon'], $myrow['cena'], $myrow['adress'], $myrow['text'][/PHP]
Но ведь тогда не выведется как я хочу всё в таблице?Или я чего не понял?
И того:
1.Не выводятся данные пользователя.
2.Не выводится реклама в цикле.
Всё ещё нуждаюсь в помощи!
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Panich
Panich
Topic Starter сообщение 25.5.2011, 10:57; Ответить: Panich
Сообщение #7


В дополнение к вышесказаному:
Попробовал всё что у меня было переписать по другому:
[PHP]<?php
include ("bd.php");
$result4 = mysql_query("SELECT * FROM users WHERE login='$login' LIMIT 1", $db)or die("Ошибка в запросе: " . mysql_error());
$myrow4 = mysql_fetch_array ($result4);
if (empty($myrow4['avatar']))
{
$avatar = "../files/avatars/net-avatara.jpg";
}
else
{
$avatar=$myrow4['avatar'];
}
$id=$myrow4['id'];
$name=$myrow4['name'];
$pol=$myrow4['pol'];
$vozr_namber=$myrow4['vozr_namber'];
$vozr_mouns=$myrow4['vozr_mouns'];
$vozr_year=$myrow4['vozr_year'];
$sity=$myrow4['sity'];
$pass=$myrow4['pass'];
$login=$myrow4['login'];
print_r("<table id='for_tabel_reg'>
<tr>
<td>%s</td>
</tr>
<tr>
<td>
<strong class='name'>%s %s</strong>
</td>
</tr>
<tr>
<td>
<a><img class='img' alt='' src='%s'></a>
</td>
</tr>
</table>", $myrow['sity'], $myrow['name'], $myrow['age'], $myrow['avatar']);//строка 120
?>[/PHP]
Теперь на странице выдаёт ошибку:
Warning: print_r() expects at most 2 parameters, 5 given in Z:\home\localhost\www\znakomstva\page_user.php on line 120
Не смотря на это чувствую,что в правильном направлении!)))
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
P0ZiTR0N
P0ZiTR0N
сообщение 25.5.2011, 11:17; Ответить: P0ZiTR0N
Сообщение #8


эм.... не сравнивайте print_r и print_f :) :
[PHP] print_r ($myrow);
while ($myrow = mysql_fetch_array($result))
{
//цикл
}[/PHP]
Пересмотрел код... возник интересный вопрос - а зачем 2 раза разбивать массив?
[PHP] $myrow = mysql_fetch_array($result);
while ($myrow = mysql_fetch_array($result)) [/PHP]
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
P0ZiTR0N
P0ZiTR0N
сообщение 25.5.2011, 11:30; Ответить: P0ZiTR0N
Сообщение #9


(Panich @ 25.5.2011, 13:42) *
Сначало присвоил переменным значения,которые вытащил из базы данных
Потом осуществил вывод

Имхо тестовый вывод надо производить сразу после определения
[PHP]$sity = $myrow4['sity'];
echo $sity; [/PHP]
:)
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
Panich
Panich
Topic Starter сообщение 25.5.2011, 11:43; Ответить: Panich
Сообщение #10


Про
[PHP] print_r и print_f [/PHP]
это я от безисходности уже)))замечание принял как повод к действию
А про
[PHP]$myrow = mysql_fetch_array($result);
while ($myrow = mysql_fetch_array($result))[/PHP]
это я у Попова в уроках передрал!Неправильно?Подскажите как нужно?

А по первому вопросу где происходит вывод данных пользователя есть у Вас предположения?
Вернуться в начало страницы
 
Ответить с цитированием данного сообщения
3 страниц V   1 2 3 >
Открыть тему
Тема закрыта
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


Свернуть

> Похожие темы

  Тема Ответов Автор Просмотров Последний ответ
Горячая тема (нет новых ответов) Как перестать толстеть?
274 DocAnton64 26496 Вчера, 21:26
автор: DUbiev
Открытая тема (нет новых ответов) Спецпредложение "Коробка Битрикс24 в облаке: как перенести и сколько это стоит"
23 Tucha 4011 14.5.2021, 10:13
автор: Tucha
Открытая тема (нет новых ответов) В WP moderation-hash как этого избавится?
2 PavlivGroup 296 12.5.2021, 20:39
автор: Starpony
Открытая тема (нет новых ответов) Google дал советы, как оптимизировать изображения, не ухудшив их ранжирование
4 VinogradOFF 697 11.5.2021, 22:47
автор: Coffee
Горячая тема (нет новых ответов) Как и где отдыхать весной-летом 2021?
43 uahomka 1698 10.5.2021, 0:00
автор: Wachowski


 



RSS Текстовая версия Сейчас: 16.5.2021, 7:09
Дизайн