Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [MySQL][PHP]Pobieranie rekordów z MySQL'a - mega problem
tonyy85
post
Post #1





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 14.11.2010

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


Cześć. Mam problem z wyświetlaniem rekordów z bazy danych. Męczę się z tym od tygodnia. Pytałem wielokrotnie wujka Google, ale problem jak był tak jest.
Zamiast otrzymać normalne wyniki moich zapytań do bazy, otrzymuję pustą stronę. Zauważyłem, że jeśli ograniczę zapytanie do bazy do tylko jednej kolumny np "select nazwa from klienci" to nie otrzymuję pustej strony, a "nazwa" ( echo $wiersz['nazwa']; ) wyświetla się normalnie. Natomiast jeśli chcę pobrać dane z kilku wybranych kolumn lub z wszystkich (select * ...) i wyświetlić wybrane, to właśnie dostaję pustą stronę. Potrafię jedynie wyświetlić dane z jednej kolumny tabeli, a jak chcę np nazwę i adres to już niestety nie daje rady. Gdzieś musi być błąd.. Będę wdzięczny za pomoc w jego odnalezieniu. Oto kod:

  1. <?php
  2. @ $polaczenie = new mysqli('localhost', 'user', 'haslo', 'nazwa_bazy');
  3. if (mysqli_connect_errno())
  4. {
  5. echo 'Błąd: Połączenie z bazą danych nie powiodło się. Spróbuj jeszcze raz później.';
  6. }
  7.  
  8. $zapytanie = $polaczenie->query("SELECT * FROM klienci");
  9.  
  10. echo '<table>';
  11. while($wartosci = $zapytanie->fetch_assoc()) {
  12. echo '<tr><td>' . $wartosci['klientid'] . '</td><td>' . $wartosci['nazwa'] . '</td><td>' . $wartosci['adres_ul'] . '</td><td>' . $wartosci['adres_m'] . '</td></tr>';
  13. }
  14. unset($polaczenie);
  15. echo '</table>';
  16. ?>


próbowałem też takim sposobem:


  1. <?php
  2. @ $db = new mysqli('localhost', 'user', 'haslo', 'nazwa_bazy');
  3.  
  4. $zapytanie = "select nazwa, adres_ul, adres_m from klienci";
  5. $wynik = $db->query($zapytanie);
  6.  
  7. $ile_znalezionych = $wynik->num_rows;
  8.  
  9. echo '<p>Ilosc znalezionych pozycji: '.$ile_znalezionych.'</p>';
  10.  
  11. for ($i=0; $i < $ile_znalezionych; $i++)
  12. {
  13. $wiersz = $wynik->fetch_array();
  14. echo '<p><strong>'.($i+1).'.Nazwa firmy: ';
  15. echo $wiersz['nazwa'];
  16. echo '</strong><br />Adres: ';
  17. echo $wiersz['adres_ul'];
  18. echo '<br />Miasto: ';
  19. echo $wiersz['adres_m'];
  20. echo '</p>';
  21. }
  22.  
  23. $wynik->free();
  24. $db->close();
  25. ?>


Ten post edytował tonyy85 14.11.2010, 21:57:15
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
daros17
post
Post #2





Grupa: Zarejestrowani
Postów: 233
Pomógł: 27
Dołączył: 27.08.2007

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


Musi działać, testowałem i mi działa. Czy w tabeli "tabela" masz utworzone kolumny id oraz pelna_nazwa i czy się w nich coś znajduje?

zamień na i napisz co wyświetla
  1. mysql_connect('localhost','uzytkownik','haslo')or die (mysql_error());
  2.  
  3. $result = mysql_query('select * from tabela') or die (mysql_error());
  4. while ($row = mysql_fetch_assoc($result)) {
  5. echo $row["id"]. ' ';
  6. echo $row["pelna_nazwa"];
  7. }
  8.  


Ten post edytował daros17 14.11.2010, 23:50:26
Go to the top of the page
+Quote Post
tonyy85
post
Post #3





Grupa: Zarejestrowani
Postów: 9
Pomógł: 0
Dołączył: 14.11.2010

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


Cytat(daros17 @ 14.11.2010, 23:49:30 ) *
Musi działać, testowałem i mi działa. Czy w tabeli "tabela" masz utworzone kolumny id oraz pelna_nazwa i czy się w nich coś znajduje?

zamień na i napisz co wyświetla
  1. mysql_connect('localhost','uzytkownik','haslo')or die (mysql_error());
  2.  
  3. $result = mysql_query('select * from tabela') or die (mysql_error());
  4. while ($row = mysql_fetch_assoc($result)) {
  5. echo $row["id"]. ' ';
  6. echo $row["pelna_nazwa"];
  7. }
  8.  


Zrobiłem tak:
  1. <?php
  2. mysql_connect('localhost','user','pass')or die (mysql_error());
  3.  
  4. mysql_select_db('wszyscy_klienci')or die (mysql_error());
  5.  
  6. $result = mysql_query('select * from klienci') or die (mysql_error());
  7.  
  8. while ($row = mysql_fetch_assoc($result)) {
  9.  
  10. echo $row["klientid"]. ' ';
  11.  
  12. echo $row["nazwa"];
  13.  
  14. }
  15.  
  16. ?>

i dostałem znów pustą stronę... upewniłem się, że sam mysql prawidłowo wyświetla dane z wybranych przeze mnie kolumn. W php coś szwankuje. Jednak, tak jak opisałem na początku, używając wymienionych tam 2 sposobów i wybierając tylko jedną kolumnę do wyświetlenia, jest ok. Ale to tylko połowa sukcesu bo chciałbym wyświetlić to co potrzebuję. Dodam, że mam zainstalowane najnowsze wersje apache, php i mysql

Ten post edytował tonyy85 15.11.2010, 00:07:21
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: 4.10.2025 - 07:30