Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Problem z wyświetleniem danych z mysql
spider007
post
Post #1





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 11.11.2009

Ostrzeżenie: (0%)
-----


Witam wszystkich.

Otórz uczę się php i z pomocą pewnej książki zaczynam rozumieć język który mnie kiedyś irytował.

Jednak w trakcie pisania kodu napotkałem na pewien problem. Może zacznę od tego że w PhpMyAdmin utworzyłem baze o nazwie "szkola" a do tej bazy dodałem tabelę o nazwie "osoby". Za pomocą php łączę się z bazą danych, jednak gdy chce wyświetlić dane które wprowadziłem w tabeli wyskakuje mi błąd.

Mój kod pliku dane-osobowe.php

Cytat
<?php
$baza = mysql_connect
('localhost',
'admin',
'admin123');

if ($baza === false) die('nie mozna nawiazac polaczenia z baza (IMG:style_emoticons/default/exclamation.gif) ' );
mysql_query('SET NAMES "utf8"');
$ok = mysql_select_db('szkola');{
$status = 'baza danych działa <b>poprawnie</b>!!!';
}

if ($ok === false) die('nie mozna bylo wybrac bazy danych (IMG:style_emoticons/default/exclamation.gif) ');
echo $status;
?>



<?php
$zapytanie = 'SELECT imie, nazwisko, telefon FROM osoby';
?>

<?php
$odpowiedz = mysql_query($zapytanie);
if ($odpowiedz === false) die('Nie mozna odebrac danych');
mysql_free_result($odpowiedz);
?>
<table border="1">

<tr>
<th>Lp.</th>
<th>Imię.</th>
<th>Nazwisko</th>
<th>Nr telefonu</th>
</tr>
<tbody>
<?php

while ($rekord = mysql_fetch_assoc($odpowiedz)){
$lp = 0;
$lp = $lp + 1;
$imie = $rekord['imie'];
$nazwisko = $rekord['nazwisko'];
$nrtelefonu = $rekord['telefon'];
echo ' <tr>'."\r\n";
echo ' <td>'.$lp.'</td>'."\r\n";
echo ' <td>'.$imie.'</td>'."\r\n";
echo ' <td>'.$nazwisko.'</td>'."\r\n";
echo ' <td>'.$nrtelefonu.'</td>'."\r\n";
echo ' </tr>'."\r\n";

}
?>
</tbody>
</table>


<?php
mysql_close($baza);

?>



Po uruchomieniu tego pliku w przeglądarce wyswietla mi sie taki komunikat błędu.

Cytat
baza danych działa poprawnie!!! Lp. Imię. Nazwisko Nr telefonu

( ! ) Warning: mysql_fetch_assoc(): 5 is not a valid MySQL result resource in home\www\baza\dane-osobowe.php on line 25
Call Stack
# Time Memory Function Location
1 0.0008 677600 {main}( ) ..\dane-osobowe.php:0
2 0.0059 685456 mysql_fetch_assoc ( ) ..\dane-osobowe.php:25


Co ciekawe sprawdziłem kod przy pomoc mysql_error(); i niestety wywala mi ten błąd. Zmieniałem nazwe bazdy danych ale to nic nie pomogło.
Wiem że to dla was strasznie prosta sprawa dlatego sie do Was z tym zgłaszam. I mam nadzieje że bedziecie wyrozumiali (IMG:style_emoticons/default/smile.gif) . Dopiero zaczynam.
Powód edycji: [piotrooo89]: wstawiam tagi
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
spider007
post
Post #2





Grupa: Zarejestrowani
Postów: 4
Pomógł: 0
Dołączył: 11.11.2009

Ostrzeżenie: (0%)
-----


Oki dokonałem drobnych zmian i już wyświetal mi się tabela bez błędów ale nie ma zapełnionych danyc (IMG:style_emoticons/default/sad.gif) .

oto screen :

(IMG:http://dodatkowy-etat.pl/img/wyswietl.png)

A oto plik po zmianach.

  1. <?php
  2. ('localhost',
  3. 'admin',
  4. 'admin123');
  5.  
  6. if ($baza === false) die('nie mozna nawiazac polaczenia z baza ' );
  7. mysql_query('SET NAMES "utf8"');
  8. $ok = mysql_select_db('szkola');{
  9.  
  10. }
  11.  
  12. if ($ok === false) die('nie mozna bylo wybrac bazy danych ');
  13.  
  14. ?>
  15.  
  16.  
  17.  
  18. <?php
  19. $zapytanie = 'SELECT imie, nazwisko, telefon FROM osoby';
  20. ?>
  21.  
  22. <?php
  23. $odpowiedz = mysql_query($zapytanie);
  24. if ($odpowiedz === false) die('Nie mozna odebrac danych');
  25.  
  26. ?>
  27. <table border="1">
  28.  
  29. <tr>
  30. <th>Lp.</th>
  31. <th>Imię.</th>
  32. <th>Nazwisko</th>
  33. <th>Nr telefonu</th>
  34. </tr>
  35. <tbody>
  36. <?php
  37.  
  38. while ($rekord = mysql_fetch_assoc($odpowiedz)){
  39. $lp = 0;
  40. $lp = $lp + 1;
  41. $imie = $rekord['imie'];
  42. $nazwisko = $rekord['nazwisko'];
  43. $nrtelefonu = $rekord['telefon'];
  44. echo ' <tr>'."\r\n";
  45. echo ' <td>'.$lp.'</td>'."\r\n";
  46. echo ' <td>'.$imie.'</td>'."\r\n";
  47. echo ' <td>'.$nazwisko.'</td>'."\r\n";
  48. echo ' <td>'.$nrtelefonu.'</td>'."\r\n";
  49. echo ' </tr>'."\r\n";
  50. mysql_free_result($odpowiedz);
  51. }
  52. ?>
  53. </tbody>
  54. </table>
  55.  
  56.  
  57. <?php
  58. mysql_close($baza);
  59.  
  60. ?>
  61.  
  62.  



Czy mogli byście zmodyfikować kod i wrzucić go tutaj?

A co do innych modyfikacje to kodu które poradziłeś mi 'basstone' wyskakuje mi jeden błąd :
Parse error: syntax error, unexpected $end in home\www\baza\dane-osobowe.php on line 38

Przepraszam za moje byki w orto.

Dostałem zapytanie od paru osób (IMG:style_emoticons/default/smile.gif) dlatego odpowiedź umieszczam tutaj.

Korzystam z książki

Tworzenie serwisów WWW. Pierwsza pomoc
Autorzy: Maria Sokół, Radosław Sokół
Stron: 112

Książka w bardzo fajny sposób daje informacje związane z php. Te kod właśnie jest z książki. Nie wiem dlaczego on nie działa.

Głównie robie tak że jak pisze jakiś kod i on działa pisze później w ramach nauki kolejnych kilka zmodyfikowanych żeby zobaczyć czy dobrze rozumiem temat. Jeśli kod napisany przez mnie nie działa analizuje go i poprawiam. Jak narazie moje zmodyfikowane programiki w poprzednich rozdziałach działają ale z tym nie moge dać sobie rady (IMG:style_emoticons/default/sad.gif) .

Pozdrawiam
Go to the top of the page
+Quote Post

Posty w temacie


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 14.10.2025 - 21:10