Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Wyświetlanie Tabeli Mysql w PHP
Forum PHP.pl > Forum > PHP
Endure
Mam problem następującej treści, usilnie próbuje wyświetlić tabele z MYSQL w PHP, jednak w żaden sposób nie chce mi się to wykonać. Po wpisaniu nazwy pliku php w przeglądarce wyskakuje biała strona. Nie wiem czy jest gdzieś błąd w skrypcie, próbowałem już wszystkiego i nic. HELP.

  1. <?php
  2.  
  3. $connection = @mysql_connect('localhost', 'root', 'bujek', 'ewidencja')
  4.  
  5. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  6.  
  7. echo "Udało się połączyć z serwerem!<br />";
  8.  
  9. $db = @mysql_select_db('ewidencja', $connection)
  10.  
  11. or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());
  12.  
  13. echo "Udało się połączyć z bazą dancych!";
  14.  
  15.  
  16. $wynik = mysql_query("SELECT * FROM Rosa")
  17. or die('Błąd zapytania');
  18.  
  19.  
  20. if(mysql_num_rows($wynik) > 0) {
  21.  
  22. echo "<table cellpadding=\"2\" border=1>";
  23. while($r = mysql_fetch_assoc($wynik)) {
  24. echo "<tr>";
  25. echo "<td>".$r['ip']."</td>";
  26. echo "<td>".$r['imie_studenta']."</td>";
  27. echo "<td>".$r['nazwisko_studenta']."</td>";
  28. echo "<td>".$r['data_urodzenia']."</td>";
  29. echo "<td>".$r['ocena']."</td>";
  30. echo "<td>
  31. <a href=\"index.php?a=del&amp;id={$r['ip']}\">DEL</a>
  32. <a href=\"index.php?a=edit&amp;id={$r['ip']}\">EDIT</a>
  33. </td>";
  34. echo "</tr>";
  35. }
  36. echo "</table>";
  37. } mysql_close($connection);
  38.  
  39. ?>
plej
usuń 20linijke i jej nawias na końcu po co ci ona? nie potrzebna ci:)
skoro chcesz wyświetlić wszystkie wyniki:)
Endure
Dzięki za szybką odpowiedz, zrobiłem tak jak mówiłeś o to Ci chodziło? Niestety nadal biało :/ Nie wiem co jest kurczę, z poziomu PHP tabela w Mysql się stworzyła.

  1. <?php
  2.  
  3. $connection = @mysql_connect('localhost', 'root', 'bujek', 'ewidencja')
  4.  
  5. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  6.  
  7. echo "Udało się połączyć z serwerem!<br />";
  8.  
  9. $db = @mysql_select_db('ewidencja', $connection)
  10.  
  11. or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());
  12.  
  13. echo "Udało się połączyć z bazą dancych!";
  14.  
  15.  
  16. $wynik = mysql_query("SELECT * FROM Rosa")
  17. or die('Błąd zapytania');
  18.  
  19.  
  20. echo "<table cellpadding=\"2\" border=1>";
  21. while($r = mysql_fetch_assoc($wynik)) {
  22. echo "<tr>";
  23. echo "<td>".$r['id']."</td>";
  24. echo "<td>".$r['imie_studenta']."</td>";
  25. echo "<td>".$r['nazwisko_studenta']."</td>";
  26. echo "<td>".$r['data_urodzenia']."</td>";
  27. echo "<td>".$r['ocena']."</td>";
  28. echo "<td>
  29. <a href=\"index.php?a=del&amp;id={$r['id']}\">DEL</a>
  30. <a href=\"index.php?a=edit&amp;id={$r['id']}\">EDIT</a>
  31. </td>";
  32. echo "</tr>";
  33. }
  34. echo "</table>";
  35. mysql_close($connection);
  36.  
  37. ?>
plej
  1. <?php
  2. $connection = @mysql_connect('localhost', 'root', 'bujek', 'ewidencja')
  3. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  4.  
  5.  
  6. $db = @mysql_select_db('ewidencja', $connection)
  7. or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());
  8.  
  9. $wynik = mysql_query("SELECT * FROM Rosa")
  10. or die('Błąd zapytania');
  11. echo '<table cellpadding="2" border=1>';
  12. while($r = mysql_fetch_assoc($wynik)) {
  13. $id = $r["id"];
  14. $imie_student = $r["imie_studenta"];
  15. $nazwisko_studenta = $r["nazwisko_studenta"];
  16. $data_urodzenia = $r["data_urodzenia"][
  17. $ocena = $r["ocena"];
  18.  
  19. echo '<tr>';
  20. echo '<td>'.$id.'</td>';
  21. echo '<td>'.$imie_student.'</td>';
  22. echo '<td>'.$nazwisko_studenta].'</td>';
  23. echo '<td>'.$data_urodzenia.'</td>';
  24. echo '<td>'.$ocena.'</td>';
  25. echo '<td>
  26. <a href="index.php?a=del&amp;id='.$id.'">DEL</a>
  27. <a href="index.php?a=edit&amp;id='.$id.'">EDIT</a>
  28. </td>';
  29. echo '</tr>';
  30. }
  31. echo '</table>';
  32. mysql_close($connection);
  33.  
  34. ?>



przerobiłem ją po swojemu ja tak zawsze robię i mi działa ci tez powinna:)

aaa linia "6" usuń znak "@" małpy
wtedy może ci błąd wyskoczy bo aż dziwne że nic ci nie wyskakuje:)

i w lini 9 tez usuń
mortus
A wyświetla się napis "Udało się połączyć z serwerem!"? A w ogóle masz zainstalowany jakiś serwer www ze zintegrowanym PHP i czy ten plik, który nie generuje Ci żadnego wyniku znajduje się w document root wspomnianego serwera?
melkorm
Jak poprawnie zadać pytanie

P.S. Temat nadaje się co najwyżej na Przedszkole
Endure
Cytat(mortus @ 30.05.2011, 19:58:45 ) *
A wyświetla się napis "Udało się połączyć z serwerem!"? A w ogóle masz zainstalowany jakiś serwer www ze zintegrowanym PHP i czy ten plik, który nie generuje Ci żadnego wyniku znajduje się w document root wspomnianego serwera?


Tak wszystko mam, łączy mi się z serwerem, plik umieszczam w htdocs w Apache. Aż takim amatorem nie jestem smile.gif

  1. <?php
  2. $connection = mysql_connect('localhost', 'root', 'bujek', 'ewidencja')
  3. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  4.  
  5.  
  6. $db = mysql_select_db('ewidencja', $connection)
  7. or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());
  8.  
  9. $wynik = mysql_query("SELECT * FROM Rosa")
  10. or die('Błąd zapytania');
  11. echo '<table cellpadding="2" border=1>';
  12. while($r = mysql_fetch_assoc($wynik)) {
  13. $id = $r["id"];
  14. $imie_student = $r["imie_studenta"];
  15. $nazwisko_studenta = $r["nazwisko_studenta"];
  16. $data_urodzenia = $r["data_urodzenia"];
  17. $ocena = $r["ocena"];
  18.  
  19. echo '<tr>';
  20. echo '<td>'.$id.'</td>';
  21. echo '<td>'.$imie_studenta.'</td>';
  22. echo '<td>'.$nazwisko_studenta.'</td>';
  23. echo '<td>'.$data_urodzenia.'</td>';
  24. echo '<td>'.$ocena.'</td>';
  25. echo '<td>
  26. <a href="index.php?a=del&amp;id='.$id.'">DEL</a>
  27. <a href="index.php?a=edit&amp;id='.$id.'">EDIT</a>
  28. </td>';
  29. echo '</tr>';
  30. }
  31. echo '</table>';
  32. mysql_close($connection);
  33.  
  34. ?>


Usunąłem @ nadal nie idzie. Po co dałeś w 22 i 16 linii nawias ] ?
melkorm
A masz tam jakieś w ogóle rekordy? I czy źródło strony też jest puste?
Endure
Tak mam sam zobacz:



Nie wiem co jest :/ Znowu biało nawet jak dałem:

error_reporting(E_ALL);
ini_set('display_errors','1');

nie zwraca mi błędów.
melkorm
a w przeglądarce co masz?
Endure


Biało ;/

Pisząc skrypt PHP do tworzenia tabeli w MySQL nie ma żadnych problemów, tabela się tworzy, tak samo z dodawaniem rekordów. Problem się zaczyna gdy chcę coś z MySQL wyświetlić w przeglądarce. W sumie wyświetla mi np i ile mam kolumn no ale tabeli nie chce, a muszę to jutro zademonstrować na wykładzie, a już mi pomysłów braknie. Ale jeżeli takie operacje jak wymieniłem przebiegają bez problemów to problemu nie należy się doszukiwać w konfiguracji php?
melkorm
Zastosuj się do mojego linku który wkleiłem powyżej.

Hint: error_reporting.
plej
właśnie a masz rekordy w bazie danych? tabela jest dobra napewno:)
bo to kopia mojej co zawsze uzywam więc nie wiem co tam u ciebie grane:/
może wklej całą baze z rekordami co? pomoże nam troche to ja sprawdze u siebie wtedy itd.
Endure
ok chwila zaraz wam wszystko podam, dzięki za zainteresowanie

tworzenie tabeli:
  1. <?php
  2. $mysqli = mysqli_connect("localhost", "root", "bujek", "ewidencja");
  3.  
  4. if (mysqli_connect_errno()) {
  5. printf("Nie udało sie połączyć: %s\n", mysqli_connect_error());
  6. exit();
  7. }else{
  8. $sql = "create table Rosa
  9. (id int auto_increment primary key not null,
  10. imie_studenta varchar(15) not null,
  11. nazwisko_studenta varchar(20) not null,
  12. data_urodzenia date not null,
  13. ocena int not null)";
  14. $rez = mysqli_query($mysqli, $sql);
  15. if ($rez === true) {
  16. echo "Tabela Rosa została utworzona.";
  17. }else{
  18. printf("Nie można utworzyć tabeli: %s\n", mysqli_error($mysqli));
  19. }
  20.  
  21. mysqli_close($mysqli);
  22. }
  23. ?>




[IMG=http://img269.imageshack.us/img269/3671/87664453.th.jpg][/IMG]

Dodawanie rekordów:

  1. <?php
  2. $mysqli = mysqli_connect("localhost", "root", "bujek", "ewidencja");
  3. if (mysqli_connect_errno()) {
  4. printf("Nie udało sie połączyć: %s\n", mysqli_connect_error());
  5. exit();
  6. }else{
  7. $sql = "INSERT INTO testowa1 (imie_studenta, nazwisko_studenta, data_urodzenia, ocena) VALUES ('Waclaw', 'Morek', '1987-01-15', '4')";
  8. $rez = mysqli_query($mysqli, $sql);
  9. if ($rez === true) {
  10. echo "Dodano rekord";
  11. }else{
  12. printf("Nie udało się wstawić rekordu: %s\n", mysqli_error($mysqli));
  13. }
  14. mysqli_close($mysqli);
  15. }
  16. ?>


  1. <?php
  2. $mysqli = mysqli_connect("localhost", "root", "bujek", "ewidencja");
  3. if (mysqli_connect_errno()) {
  4. printf("Nie udało sie połączyć: %s\n", mysqli_connect_error());
  5. exit();
  6. }else{
  7. $sql = "INSERT INTO Rosa (imie_studenta, nazwisko_studenta, data_urodzenia, ocena) VALUES ('Kamila', 'Burek', '1986-10-11', '5')";
  8. $rez = mysqli_query($mysqli, $sql);
  9. if ($rez === true) {
  10. echo "Dodano rekord";
  11. }else{
  12. printf("Nie udało się wstawić rekordu: %s\n", mysqli_error($mysqli));
  13. }
  14. mysqli_close($mysqli);
  15. }
  16. ?>


  1. <?php
  2. $mysqli = mysqli_connect("localhost", "root", "bujek", "ewidencja");
  3. if (mysqli_connect_errno()) {
  4. printf("Nie udało sie połączyć: %s\n", mysqli_connect_error());
  5. exit();
  6. }else{
  7. $sql = "INSERT INTO Rosa (imie_studenta, nazwisko_studenta, data_urodzenia, ocena) VALUES ('Julia', 'Kot', '1989-08-09', '3')";
  8. $rez = mysqli_query($mysqli, $sql);
  9. if ($rez === true) {
  10. echo "Dodano rekord";
  11. }else{
  12. printf("Nie udało się wstawić rekordu: %s\n", mysqli_error($mysqli));
  13. }
  14. mysqli_close($mysqli);
  15. }
  16. ?>






Nie wiem co jeszcze wam mogę udostępnić :/
plej
Spoko że się postarałeś z screnami ale chodziło żebys baze danych wkleił "kody bazy danych" bo ja nie mam zamiaru ich przepisywac z screnów:D
melkorm
Wrzuć to cholerne error_reporting i sprawdź źródło strony.

P.S. czemu tu używasz bujek, a w innych skryptach webmaster ?
Endure
a bo testowałem to różnych komputerach stąd inne hasła. Już dałem Kod zamiast screenów sorry

  1. <?php
  2. ini_set('display_errors','1');
  3.  
  4. $connection = mysql_connect('localhost', 'root', 'bujek', 'ewidencja')
  5. or die('Brak połączenia z serwerem MySQL.<br />Błąd: '.mysql_error());
  6.  
  7.  
  8. $db = mysql_select_db('ewidencja', $connection)
  9. or die('Nie mogę połączyć się z bazą danych<br />Błąd: '.mysql_error());
  10.  
  11. $wynik = mysql_query("SELECT * FROM Rosa")
  12. or die('Błąd zapytania');
  13. echo '<table cellpadding="2" border=1>';
  14. while($r = mysql_fetch_assoc($wynik)) {
  15. $id = $r["id"];
  16. $imie_student = $r["imie_studenta"];
  17. $nazwisko_studenta = $r["nazwisko_studenta"];
  18. $data_urodzenia = $r["data_urodzenia"];
  19. $ocena = $r["ocena"];
  20.  
  21. echo '<tr>';
  22. echo '<td>'.$id.'</td>';
  23. echo '<td>'.$imie_studenta.'</td>';
  24. echo '<td>'.$nazwisko_studenta.'</td>';
  25. echo '<td>'.$data_urodzenia.'</td>';
  26. echo '<td>'.$ocena.'</td>';
  27. echo '<td>
  28. <a href="index.php?a=del&id='.$id.'">DEL</a>
  29. <a href="index.php?a=edit&id='.$id.'">EDIT</a>
  30. </td>';
  31. echo '</tr>';
  32. }
  33. echo '</table>';
  34. mysql_close($connection);
  35.  
  36. ?>


Znowu biało, nawet errora nie wywala :/ a w źródle strony też nic biało

import mojej bazy: http://pliczek.net/index.php?p=32833 haslo mysql: bujek, baza danych ewidencja, tabela Rosa
plej
Udało mi się to zrobić i działa całe teraz podam ci all:
a więc połączenie umieściłem w osobnym pliku w "db.php"
db.php
  1. <?php
  2.  
  3. //stałe bazy danych
  4. $mysql_host = 'localhost';
  5. $mysql_login = 'testowe';
  6. $mysql_haslo = 'testowe';
  7. $mysql_baza = 'testowa';
  8.  
  9. // połączenie z bazą danych
  10. $polaczenie = mysql_connect($mysql_host, $mysql_login, $mysql_haslo) or die('Błąd: nie udało się nawiązać połączenia z bazą danych.');
  11.  
  12. // połączenie ze schematem bazy danych
  13. mysql_select_db($mysql_baza) or die('Błąd: nie udało się wybrać schematu bazy danych.');
  14. mysql_query('SET NAMES \'utf8\'');
  15.  
  16. ?>


twój plik index:
index.php
  1. <?php
  2. include('db.php');
  3.  
  4. $wynik = mysql_query("SELECT * FROM rosa")
  5. or die('Błąd zapytania');
  6. echo '<table cellpadding="2" border=1>';
  7. while($r = mysql_fetch_assoc($wynik)) {
  8. $id = $r["id"];
  9. $imie_studenta = $r["imie_studenta"];
  10. $nazwisko_studenta = $r["nazwisko_studenta"];
  11. $data_urodzenia = $r["data_urodzenia"];
  12. $ocena = $r["ocena"];
  13.  
  14. echo '<tr>';
  15. echo '<td>'.$id.'</td>';
  16. echo '<td>'.$imie_studenta.'</td>';
  17. echo '<td>'.$nazwisko_studenta.'</td>';
  18. echo '<td>'.$data_urodzenia.'</td>';
  19. echo '<td>'.$ocena.'</td>';
  20. echo '<td>
  21. <a href="index.php?a=del&id='.$id.'">DEL</a>
  22. <a href="index.php?a=edit&id='.$id.'">EDIT</a>
  23. </td>';
  24. echo '</tr>';
  25. }
  26. echo '</table>';
  27. mysql_close($polaczenie);
  28.  
  29. ?>

include('db.php'); wklejam połączenie jak cośsmile.gif
i łap baze danych:

sql.sql
  1. CREATE TABLE IF NOT EXISTS `rosa` (
  2. `id` int(11) NOT NULL AUTO_INCREMENT,
  3. `imie_studenta` varchar(15) NOT NULL,
  4. `nazwisko_studenta` varchar(20) NOT NULL,
  5. `data_urodzenia` date NOT NULL,
  6. `ocena` int(11) NOT NULL,
  7. PRIMARY KEY (`id`)
  8. ) ENGINE=InnoDB DEFAULT CHARSET=latin1 AUTO_INCREMENT=5 ;
  9.  
  10. --
  11. -- Zrzut danych tabeli `rosa`
  12. --
  13.  
  14. INSERT INTO `rosa` (`id`, `imie_studenta`, `nazwisko_studenta`, `data_urodzenia`, `ocena`) VALUES
  15. (1, 'Kamila', 'Burek', '1986-10-11', 5),
  16. (2, 'Waclaw', 'Morek', '1987-01-15', 4),
  17. (3, 'Julia', 'Kot', '1989-08-09', 3),
  18. (4, 'Julia', 'Kot', '1989-08-09', 3);



Zrób najlepiej nową bazę bo ta twoja baza nie działała:) ja zrobiłem nową i zmień nazwę połączenia itd.

A i ty mówiłeś że masz ciągle białe tzn. miałeśsmile.gif a mi błędy wyskakiwały że nie można wybrać bazy danych choć nazwa była dobra:) więc po pierwsze włącz sobie raportowanie błędów w php.ini smile.gif
i nie zapomnij usunąć tych baz co masz i zrobić nową.
Endure
O dzięki chopie życie mi uratowałeś smile.gif Już myślałem że nic z tego nie będzie i się zastawiałem jak to skrupulatnie ominąć smile.gif teraz chodzi wink.gif
Pozdrawiam



smile.gif
plej
hehe spoko.

Pozdr.
a teraz idę spaćbiggrin.gif
Dobranoc haha.gif
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.