Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [SQL] Wyświetlenie tabeli - problem z funkcją
Forum PHP.pl > Forum > Przedszkole
Max Damage
Zacząłem zabawę z mysql i oczywiście problem:

  1. mysql_connect('mysql','Nazwa_uzytkownika','haslo');
  2. mysql_select_db("mysql");
  3. $sql="create table ksiazki
  4. (isbn char(13) not null primary key,
  5. autor char(50),
  6. tytul char(100),
  7. cena float (4,2))";
  8.  
  9. $zapytanie="insert into ksiazki values
  10. ('0-672-31697-8', 'Michael Morgan', 'Java 2 dla Profesjonalistow', 34.99),
  11. ('0-672-31745-1', 'Thomas Down', 'Instalacja Debian GNU/Linux', 24.99),
  12. ('0-672-31509-2', 'Lucas Pruitt', 'Poznaj GIMP w 24 godziny', '24.99'),
  13. ('0-672-31769-9', 'Thomas Schenk', 'Caldera OpenLinux ujarzmiony', 49.99)";
  14.  
  15. $zapytanie = "SELECT * FROM nazwa_tabeli"; $wykonaj = mysql_query($zaptanie);
  16. while($wiersz = mysql_fetch_array($wykonaj))
  17. {
  18. print "Pole pierwsze".$wiersz['pole1']."<br>";
  19. print "Pole drugie".$wiersz['pole2']."<br>";
  20. print "Pole trzecie".$wiersz['pole3']."<br>";
  21. }
  22. mysql_close;


Wyświetla mi się błąd:
mysql_fetch_array(): supplied argument is not a valid MySQL result resource in
Co źle napisałem ?
Nickel
  1. <?php
  2. $wykonaj = mysql_query($zaptanie);
  3. ?>


Literoofka winksmiley.jpg
Max Damage
No racja smile.gif ale błąd dalej jest.
Nickel
  1. <?php
  2. mysql_connect('localhost','user','pass');
  3. mysql_select_db("nickel");
  4. $sql="create table ksiazki
  5. (isbn char(13) not null primary key,
  6. autor char(50),
  7. tytul char(100),
  8. cena float (4,2))";
  9.  
  10.  
  11. $zapytanie="insert into ksiazki values
  12. ('0-672-31697-8', 'Michael Morgan', 'Java 2 dla Profesjonalistow', 34.99),
  13. ('0-672-31745-1', 'Thomas Down', 'Instalacja Debian GNU/Linux', 24.99),
  14. ('0-672-31509-2', 'Lucas Pruitt', 'Poznaj GIMP w 24 godziny', '24.99'),
  15. ('0-672-31769-9', 'Thomas Schenk', 'Caldera OpenLinux ujarzmiony', 49.99)";
  16.  
  17. mysql_query($zapytanie);
  18.  
  19. $zapytanie = "SELECT * FROM ksiazki"; $wykonaj = mysql_query($zapytanie);
  20. while($wiersz = mysql_fetch_array($wykonaj))
  21. {
  22. print "Pole pierwsze".$wiersz['pole1']."<br>";
  23. print "Pole drugie".$wiersz['pole2']."<br>";
  24. print "Pole trzecie".$wiersz['pole3']."<br>";
  25. }
  26. ?>


Heh, no nie zastanowiłem się długo poprzednim razem winksmiley.jpg Więc tak: najpierw musisz wykonać te dwa pierwsze zapytania - tworzenie tabeli i dodawawanie do niej danych. Do tego jeszcze w zapytaniu pobierającym dane zmienić "nazwa_tabeli" na "ksiazki".
Max Damage
Zrobiłem tak jak napisałeś, ale nadal nie działa sad.gif Wciąż ten sam błąd z funkcją: mysql_fetch_array()
A u ciebie to działa? Może powiedz z jakiego darmowego serwera korzystasz co tam sobie to sprawdzę.
Nickel
Wstaw po każdym mysql_query(); funkcję mysql_error(); - to powinno wyjaśnić sprawę.
Max Damage
Nom wstawiłem, a przynajmniej tak mi się wydaje:

  1. mysql_query($sql);
  2. IF (mysql_errno())
  3. {
  4. echo 'Błąd';
  5. exit;
  6. }

I w drugim tak samo. Teraz mi się oczywiście wyświetla w przeglądarcie : Błąd
Pomysły lub sugestie mile widziane...
Nickel
Nie czytasz uważnie winksmiley.jpg Wstaw mysql_error(); ta funkcja zwraca treść błędu.
Max Damage
Yyyy... nie znam tego tej funkcji.

Jeśli chodzi o treść to wydaje mi się, że ją podałem w pierwszym poście.... no chyba że nie o to ci chodzi...
Nickel
pl.php.net/mysql_error winksmiley.jpg

Po prostu zrób coś takiego i zobacz co zwróci:

  1. <?php
  2. mysql_connect('localhost','user','pass');
  3. mysql_select_db("nickel");
  4. $sql="create table ksiazki
  5. (isbn char(13) not null primary key,
  6. autor char(50),
  7. tytul char(100),
  8. cena float (4,2))";
  9.  
  10.  
  11. $zapytanie="insert into ksiazki values
  12. ('0-672-31697-8', 'Michael Morgan', 'Java 2 dla Profesjonalistow', 34.99),
  13. ('0-672-31745-1', 'Thomas Down', 'Instalacja Debian GNU/Linux', 24.99),
  14. ('0-672-31509-2', 'Lucas Pruitt', 'Poznaj GIMP w 24 godziny', '24.99'),
  15. ('0-672-31769-9', 'Thomas Schenk', 'Caldera OpenLinux ujarzmiony', 49.99)";
  16.  
  17. mysql_query($zapytanie);
  18.  
  19. $zapytanie = "SELECT * FROM ksiazki"; $wykonaj = mysql_query($zapytanie);
  20. while($wiersz = mysql_fetch_array($wykonaj))
  21. {
  22. print "Pole pierwsze".$wiersz['pole1']."<br>";
  23. print "Pole drugie".$wiersz['pole2']."<br>";
  24. print "Pole trzecie".$wiersz['pole3']."<br>";
  25. }
  26. ?>
Max Damage
Bardzo fajna funkcja smile.gif Problemem była nazwa bazy happy.gif
Prawdę mówiąc tworze po raz pierwszy i dlatego.

Ale zdaje sie, że miały się wyświetlać wpisane pozycję tymczasem mam powtórzone 4 razy:
Pole pierwsze
Pole drugie
Pole trzecie

Czegoś zapomniałem dopisać?
Nickel
  1. <?php
  2. while($wiersz = mysql_fetch_array($wykonaj))
  3. {
  4. print_r $wiersz;
  5. print "<br />";
  6. }
  7. ?>


Myślę, że to pomoże Ci zrozumieć co jest źle winksmiley.jpg
Max Damage
Hm, przekazywanie wartości?

Wszystko już działa jak powinno, choć może nie wygląda elegancko, ale to sobie zrobie biggrin.gif
Dzięki wielkie thumbsupsmileyanim.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.