Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Nie "wyciąga" danych z bazy.
Forum PHP.pl > Forum > Bazy danych > MySQL
mateŁusz
A więc. Zacząłem się bawić z bazami danych, logowanie jest, system dodawania newsów JEST, lecz gdy wpisuję w przeglądarce localhost/news.php to nie wyciąga newsów z bazy.
Zapytanie wykonałem takie:

  1. CREATE TABLE `news` (
  2. `id` INT NOT NULL AUTO_INCREMENT PRIMARY KEY ,
  3. `nazwa` VARCHAR( 30 ) NOT NULL ,
  4. `data` DATETIME NOT NULL ,
  5. `autor` VARCHAR( 15 ) NOT NULL ,
  6. `tresc` LONGTEXT NOT NULL
  7. ) ENGINE = MYISAM ;


Po wpisaniu w przeglądarke localhost/news.php otrzymuję taki błąd:
  1. Notice: Undefined index: id in E:\xampp\htdocs\1\news.php on line 3


news.php

  1. <?php
  2. include("conn.php");
  3. $query = mysql_query("select * FROM news WHERE id='".(int)$_GET['id']."'"); // 1
  4. $rekord = mysql_fetch_array($query);
  5. echo '<h1>'.$rekord[1].'</h1>Autor: '.$rekord[3].'<br/>Data: '.$rekord[2].'<p>'.$rekord[4].'</p>'; // 2
  6. ?>


Można liczyć na pomoc?
Sebek87
Jeśli wpisujesz adres localhost/news.php to jak sam widzisz nie przekazujesz zmiennej 'id', dlatego wywala Ci, że nie masz zmiennej GET o takim indeksie. Wpisz adres localhost/news.php?id=jakiś_id_newsa.
mateŁusz
Rozumiem.
Dziękuję smile.gif

A kolejna sprawa.
Jak na przykład chcę, aby wyświetlało, np. 5 najnowszych newsów z bazy danych to jak to zrobić?
Sebek87
LIMIT i ORDER BY - czytaj dokumentację MySQL.
mateŁusz
Takie coś mam:

  1. <?php
  2. include("conn.php");
  3. $query = mysql_query("select * from news order by id desc limit 0,5");
  4. while($rekord = mysql_fetch_array($query))
  5. {
  6. $naz .= '<li><a href="news.php?id='.$rekord[0].'">'.$rekord[1].'</a> Autor: '.$rekord[3].' - '.$rekord[2].'</li>';
  7. }
  8. echo '<ul>'.$naz.'</ul>';
  9. ?>


To wyświetla nazwy tematów i po naciśnięciu w dany przenosi do newsa, a chce, aby wszystkie wyświetliło od razu, żeby nie było klikać.
W każdym pliku sypie mi błędami..

Notice: Undefined variable: naz in E:\xampp\htdocs\1\nowe.php on line 6

itd..
amii
1. No to musisz wyświetlić treść news-a w pętli while.
2. To nie błędy tylko ostrzeżenia zdefiniuj najpierw $naz przypisując pustą wartość w ten sposób $naz = '';
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.