Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Polaczenie z baza danych
Forum PHP.pl > Forum > Przedszkole
kwi4tusz3k
Witam, nie moge polaczyc sie ze swoja baza danych i wyswietlic rekordow. Po zaladowaniu storny wyskakuje mi:
Iloœć osob w bazie danych: ".$num_results."
"; for ($i=0; $i <$num_results; $i++) { $row = mysql_fetch_array($result); print ($i+1).". imie:"; print stripslashes($row["imie"]); print ", nazwisko: "; print stripslashes($row["nazwisko"]); print "data urodzenia:"; print stripslashes($row["data urodzenia"]); print "
"; } ?>

Kod
  1. <?
  2. @$db = mysql_pconnect("localhost", "root", "");
  3. if (!$db)
  4. {
  5. print "wystąpił błąd w połączeniu";
  6. exit;
  7. }
  8.  
  9. mysql_select_db("bierzmowani");
  10.  
  11.  
  12.  
  13. $query = "select * from bierzmowani";
  14. $result = mysql_query($query);
  15. $num_results = mysql_num_rows($result);
  16.  
  17. print "<p>Ilość osob w bazie danych: ".$num_results."</p>";
  18. for ($i=0; $i <$num_results; $i++) {
  19. $row = mysql_fetch_array($result);
  20. print ($i+1).". imie:";
  21. print stripslashes($row["imie"]);
  22. print ", nazwisko: ";
  23. print stripslashes($row["nazwisko"]);
  24. print "data urodzenia:";
  25. print stripslashes($row["data urodzenia"]);
  26. print "<br>";
  27. }
  28. ?>


Co moze byc nie tak?
kuba_pilach
A spróbuj tą linijkę:
  1. print "<p>Ilość osob w bazie danych: ".$num_results."</p>";

na taką linijkę:
  1. echo '<p>Ilość osób w bazie danych: '.$num_result.'</p>';
b4rt3kk
Błędnie odczytujesz wynik zapytania.

  1.  
  2. $i=1;
  3. while($row = mysql_fetch_array($result)) {
  4. print ($i).". imie:";
  5. print stripslashes($row["imie"]);
  6. print ", nazwisko: ";
  7. print stripslashes($row["nazwisko"]);
  8. print "data urodzenia:";
  9. print stripslashes($row["data urodzenia"]);
  10. print "<br>";
  11. $i++;
  12. }
  13. ?>
kuba_pilach
@b4rt3kk:
To nie wpływa na podany wyżej problem.
Można i tak i tak, ale twój sposób oczywiście jest lepszy do używania niż autora tematu smile.gif
kwi4tusz3k
czytalem wlasnie ze tez mozna za pomoca while zrobic ale jakos latwiej mi bylo z for ale i tak niestety nadal wyswietla mi sie to co wyswietlalo zamiast rekordow
b4rt3kk
Cytat(kuba_pilach @ 7.11.2012, 15:29:34 ) *
@b4rt3kk:
To nie wpływa na podany wyżej problem.
Można i tak i tak, ale twój sposób oczywiście jest lepszy do używania niż autora tematu smile.gif


Akurat tak nie można:

  1. for ($i=0; $i <$num_results; $i++) {
  2. $row = mysql_fetch_array($result);
  3. print ($i+1).". imie:";
  4. print stripslashes($row["imie"]);
  5. print ", nazwisko: ";
  6. print stripslashes($row["nazwisko"]);
  7. print "data urodzenia:";
  8. print stripslashes($row["data urodzenia"]);
  9. print "<br>";
  10. }


bo powyższa pętla nie przesuwa wewnętrznego wskaźnika tablicy.

W przypadku cudzysłowów zmienna może znajdować się wewnątrz ciągu.

  1. print "<p>Ilość osob w bazie danych: $num_results</p>";
kwi4tusz3k
czy ktos moze miec jeszcze jakis inny pomysl?
kalafior122
  1. $q1 = mysql_query("select * form tabela");
  2. while($MFA = mysql_fetch_array($q1))
  3. {
  4. echo "$MFA["imie"]";
  5. echo "$MFA["nazwisko"]";
  6. // itd
  7. }
  8. //liczenie
  9. $num = mysql_num_rows($q1);
  10. echo "osob w bazie $num";
kwi4tusz3k
juz sie mi cos ruszylo zmienilem troche sposob laczenia sie z baza ale po tym twoim wyswietleniu kalafior wyskakuje:
Parse error: syntax error, unexpected '"', expecting identifier (T_STRING) or variable (T_VARIABLE) or number (T_NUM_STRING) in C:\wamp\www\baza danych\baza2.php on line
linia 20:
echo "$MFA["imie"]";
viking
Zajrzyj może do dokumentacji PHP, to są podstawy o stringach.

echo $MFA["imie"];
kwi4tusz3k
dzieki viking, jeszcze cos z parametrami nie tak ale juz cos widac
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.