[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Вывод данных из базы
sdruslan
Не выводятся данные из базы. Раньше работал, а теперь нет, код не трогал
<?php
include ("blocks/bd.php");
if (isset($_GET['id'])) {$id = $_GET['id'];}
?>
<?php

if (isset($id))
{
$result = mysql_query("SELECT `title`, `id` FROM `video_online`");
while ($myrow = mysql_fetch_assoc($result))
{
print '<p><a href="video_online.php?id='. (int)$myrow["id"] .'">'
. htmlspecialchars($myrow["title"]) .'</a></p>';
}
}

else
{
$result = mysql_query("SELECT * FROM `video_online` WHERE `id` = ". (int)$id);
$myrow = mysql_fetch_assoc($result);
}

?>
<?php

echo htmlspecialchars($myrow['title']) ?>




Спустя 14 минут, 37 секунд (26.01.2011 - 01:15) Invis1ble написал(а):
id не передается, соответственно выборка не происходит, т.к. запрос с ошибкой

Спустя 1 минута, 52 секунды (26.01.2011 - 01:17) sdruslan написал(а):
А как сделать что б передавалась? Где ошибка?

Спустя 52 секунды (26.01.2011 - 01:18) sdruslan написал(а):
Я из числа поповских biggrin.gif biggrin.gif

Спустя 1 минута, 25 секунд (26.01.2011 - 01:19) inpost написал(а):
У меня подписи есть, загляни во все, начиная с последней =)

Спустя 10 минут, 52 секунды (26.01.2011 - 01:30) Invis1ble написал(а):
sdruslan
Цитата
Я из числа поповских

ну у тебя не такой уж и запущенный случай )
Просто логика у тебя в скрипте хромает.
Мой совет - установи уровень отображения ошибок error_reporting(E_ALL); в начале скрипта и добавь к запросам or die(mysql_error()); , а потом избавляйся от ошибок, которые тебе пых покажет.

Спустя 26 минут, 57 секунд (26.01.2011 - 01:57) sdruslan написал(а):
Все прочитал, но пока ни :( ни


<?php             
include ("blocks/bd.php"); (соединяемся с базой)
if (isset($_GET['id'])) {$id = $_GET['id'];} (витягиваем переменную)
?>
<?php

if (!isset($id)) (если переменная не существует то делаем)
{
$sql = "SELECT * FROM `video_online`";(витягиваем поля с базы)
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
while ($row = mysql_fetch_assoc($result))
{
print '<p><a href="video_online.php?id='. (int)$row["id"] .'">'(и выводим)
.
htmlspecialchars($row["title"]) .'</a></p>';
}

}

else
{
$sql = "SELECT * FROM `video_online`";
$result = mysql_query($sql) or die(mysql_error() ."<br/>". $sql);
$myrow = mysql_fetch_assoc($result);
}

?>
<?php
echo htmlspecialchars($myrow['title']) ?>
[php]

Спустя 21 минута, 25 секунд (26.01.2011 - 02:18) Invis1ble написал(а):
sdruslan
Цитата
если переменная не существует то делаем

неправильно понял ты эту строчку. Читай про isset(). У тебя как раз из-за этого и проблема в коде wink.gif

Спустя 6 минут, 39 секунд (26.01.2011 - 02:25) inpost написал(а):
sdruslan
Попробуй !isset заменить на !empty (не пустая).

И ещё, пользуйся кодами оформления для скриптов.

Спустя 2 минуты, 24 секунды (26.01.2011 - 02:27) inpost написал(а):
А какие именнно данные не выводятся, с $_GET, или без?

Спустя 2 минуты, 18 секунд (26.01.2011 - 02:30) sdruslan написал(а):
С $_GET

Спустя 12 минут, 31 секунда (26.01.2011 - 02:42) inpost написал(а):
А ты уверен, что там есть данные в таблице?

Спустя 11 минут, 53 секунды (26.01.2011 - 02:54) Invis1ble написал(а):
там просто у него еще ошибка в блоке else - $id не существует, соответственно (int)$id выдаст 0

UPD. Теперь уже нет этой ошибки )

Спустя (26.01.2011 - 02:54) sdruslan написал(а):
100%
У меня там более 20таблиц все раньше работало, ничего не менял, а теперь нет.
Выводится токо первая часть кода если поставить к empty(в самом верху) знак !
Но тогда ссылки не работают

Спустя 6 минут, 46 секунд (26.01.2011 - 03:01) Invis1ble написал(а):
sdruslan
попробуй такой код:
<?php
include 'blocks/bd.php';

$sql = 'SELECT * FROM `video_online`';
$res = mysql_query($sql) or die(mysql_error());

while ($row = mysql_fetch_assoc($res))
var_dump($row);

и напиши, что выдаст

Спустя 7 минут, 57 секунд (26.01.2011 - 03:09) sdruslan написал(а):
array(3) { ["id"]=> string(1) "1" ["title"]=> string(1) "2" ["text"]=> string(1) "3" } array(3) { ["id"]=> string(1) "2" ["title"]=> string(3) "555" ["text"]=> string(4) "6666" } array(3) { ["id"]=> string(1) "3" ["title"]=> string(3) "555" ["text"]=> string(4) "6666" } array(3) { ["id"]=> string(1) "4" ["title"]=> string(3) "555" ["text"]=> string(4) "6666" }

Спустя 25 минут, 20 секунд (26.01.2011 - 03:34) Invis1ble написал(а):
Ну все норм с БД. Какую вобще задачу должен выполнять твой код? И что именно не работает?

Спустя 3 минуты, 15 секунд (26.01.2011 - 03:37) sdruslan написал(а):
Должен с базы вывести список в виде ссылок
Когда нажимаеш на ссылку текст появляется на этой же странице

Спустя 1 минута, 29 секунд (26.01.2011 - 03:39) sdruslan написал(а):
Сначала не выводится список, если поставить к emty вверху ! ,то выводится список, но ссылки не работают

Спустя 17 минут, 17 секунд (26.01.2011 - 03:56) Invis1ble написал(а):
sdruslan
причина банальна, насколько я понял )
в коде (из первого твоего поста) пропущено во втором условии отрицание. if (isset($id)) замени на if (!isset($id))

Спустя 6 минут, 16 секунд (26.01.2011 - 04:03) sdruslan написал(а):
Всеравно не работает.
А может что-то другое влиять? Может настроки какие нибудь...
Просто само по себе, как то тупо

Спустя 15 минут, 4 секунды (26.01.2011 - 04:18) Invis1ble написал(а):
выложи еще раз код, который у тебя щас получился

Спустя 3 минуты, 43 секунды (26.01.2011 - 04:21) sdruslan написал(а):
<?php
include ("blocks/bd.php");
if (isset($_GET['id'])) {$id = $_GET['id'];}
?>
<?php

if (!isset($id))
{
$result = mysql_query("SELECT `title`, `id` FROM `video_online`");
while ($myrow = mysql_fetch_assoc($result))
{
print '<p><a href="video_online.php?id='. (int)$myrow["id"] .'">'
. htmlspecialchars($myrow["title"]) .'</a></p>';
}
}

else
{
$result = mysql_query("SELECT * FROM `video_online` WHERE `id` = ". (int)$id);
$myrow = mysql_fetch_assoc($result);
}

?>
<?php

echo htmlspecialchars($myrow['title']) ?>

Спустя 10 минут, 10 секунд (26.01.2011 - 04:31) Invis1ble написал(а):
sdruslan
хрен знает... вроде все должно работать

Спустя 4 минуты, 28 секунд (26.01.2011 - 04:36) sdruslan написал(а):
Так я и говорю что с того ни сего перестал. Вот и спрашиваю что могло повлиять?
Просто даже учебные перестали файлы на которых я подготавливал, тоже не работае. Это все попов...

Спустя 13 минут, 51 секунда (26.01.2011 - 04:50) Invis1ble написал(а):
sdruslan
ладно, перепишу за тебя нормально )
Вот попробуй:
<?php
include 'blocks/bd.php';

if (isset($_GET['id']))
{
$result = mysql_query('SELECT * FROM `video_online` WHERE `id` = ' . (int)$_GET['id']);
$myrow = mysql_fetch_assoc($result);
}
else
{
$result = mysql_query('SELECT `title`, `id` FROM `video_online`') or die(mysql_error());

while ($myrow = mysql_fetch_assoc($result))
echo '<p><a href="video_online.php?id=' . (int)$myrow['id'] . '">' . htmlspecialchars($myrow['title']) .'</a></p>';
}

echo htmlspecialchars($myrow['title']);
?>

Спустя 4 часа, 4 минуты, 52 секунды (26.01.2011 - 08:55) Dron19 написал(а):
Ты денвер установил новый? И с ним не работает? Скинь мне свои скрипт и дамп базы данных, приду с учебы, проверю твой скрипт.

Спустя 3 часа, 1 минута, 53 секунды (26.01.2011 - 11:57) sdruslan написал(а):
Цитата (Invis1ble @ 26.01.2011 - 01:50)
sdruslan
ладно, перепишу за тебя нормально )
Вот попробуй:
<?php
include 'blocks/bd.php';

if (isset($_GET['id']))
{
$result = mysql_query('SELECT * FROM `video_online` WHERE `id` = ' . (int)$_GET['id']);
$myrow = mysql_fetch_assoc($result);
}
else
{
$result = mysql_query('SELECT `title`, `id` FROM `video_online`') or die(mysql_error());

while ($myrow = mysql_fetch_assoc($result))
echo '<p><a href="video_online.php?id=' . (int)$myrow['id'] . '">' . htmlspecialchars($myrow['title']) .'</a></p>';
}

echo htmlspecialchars($myrow['title']);
?>

А вот так работает, большое спасибо! laugh.gif laugh.gif
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.