![]() |
Problem z PHP i bazą danych - Wersja do druku +- Forum Webmastera, HTML, CSS, PHP, MySQL, Hosting, Domeny - Forum dla Webmasterów (https://www.webmastertalk.pl) +-- Dział: Technologie internetowe - tworzenie stron WWW (https://www.webmastertalk.pl/forum-technologie-internetowe-tworzenie-stron-www) +--- Dział: Programowanie, Bazy danych (https://www.webmastertalk.pl/forum-programowanie-bazy-danych) +--- Wątek: Problem z PHP i bazą danych (/thread-problem-z-php-i-baza-danych) |
Problem z PHP i bazą danych - Pawel1503 - 17-03-2010 Mam taki problem. Zrobiłem taki kod który ma za zadanie pobranie listy tabel z baazy danych. Niestety gdy próbuje go włączyć - albo pojawia się całe białe tło - albo pojawia się wszystko oprócz tej listy. Jak to naprawić? <?php $connection = mysql_connect("*********", "*********", "********") or die("Polaczenie nie powiodlo sie"); if($connection) { $msg = "Połączyłem sie z baza danych !!!"; $db_list = "<ul>"; $i = 0; while($i < mysql_num_rows($dbs)) { $db_names[$i] = mysql_tablename($dbs, $i); $db_list .= "<li>$db_names[$i]"; $i++; } $db_list .= "</ul>"; } ?> <HTML> <HEAD> <TITLE> Tabele</TITLE> </HEAD> <BODY> <?php echo "$msg"; ?> <p><strong>Bazy danych i tabele na stronie</strong>:</p> <?php echo "$db_list"; ?> </BODY> </HTML> RE: Problem z PHP i bazą danych - dziamber - 17-03-2010 Zrób print_r po kolei wszystkich zmiennych, w końcu natrafisz na tą która jest pusta - po sznurku dojdziesz do celu. RE: Problem z PHP i bazą danych - Dhofca - 17-03-2010 A co to jest za zmienna $dbs? RE: Problem z PHP i bazą danych - Pawel1503 - 18-03-2010 Dhofca - a poprawka - teraz ten kod wygląda tak ale efekty są takie same oprócz tego że strona ładuje się dłużej o ok. 5 sekund. Zmienna $dbs odpowiada chyba za połączenie. <?php $dbs = @mysql_connect("mysql.cba.pl", "*****", "*****") or die("Polaczenie nie powiodlo sie"); if($dbs) { $msg = "Połączyłem sie z baza danych !!!"; $db_list = "<ul>"; $i = 0; while($i < mysql_num_rows($dbs)) { $db_names[$i] = mysql_tablename($dbs, $i); $db_list .= "<li>$db_names[$i]"; echo "$db_names[$i]<p>"; $i++; } $db_list .= "</ul>"; } ?> <HTML> <HEAD> <TITLE> Tabele</TITLE> </HEAD> <BODY> <?php echo "$msg"; ?> <p><strong>Bazy danych i tabele na stronie</strong>:</p> <?php echo "$db_names"; ?> </BODY> </HTML> Wiecie co - gdy wpisałem zmienna $i - okazało się że ta pętla chyba wogóle się nie wykonuje. A jeżeli się nie wykonuje to znaczy że mysql_num_rows($dbs) = 0. Czyż nie jest tak? Strone mam na serwerze cba.pl - baze danych mysql.cba.pl RE: Problem z PHP i bazą danych - dziamber - 18-03-2010 Zmienna chyba odpowiada za połączenie - to ty nie wiesz co masz w kodzie? Sprawdz lepiej czy prawidłowo pobierasz dane z bazy, bo mi tu brakuje odwołania do bazy typu "SELECT * FROM tabela", albo nie wkleiłeś całego kodu albo po prostu łączysz się z bazą a nie pobierasz danych. RE: Problem z PHP i bazą danych - Pawel1503 - 18-03-2010 No dobra, to jest trochę za tródne więc wziąłem kolejny kod który nie działa. Ma on za zadanie połączyć się z bazą danych i stworzyć tabele "zawodnicy. <?php $dbs = @mysql_pconnect("mysql.cba.pl:3306", "*********", "*******") or die("Polaczenie nie powiodlo sie"); if($connection) { $msg = "Połączyłem sie z baza danych !!!"; } mysql_create_db('zawodnicy'); mysql_select_db('zawodnicy'); ?> <HTML> <HEAD> <TITLE> Tabele</TITLE> </HEAD> <BODY> <?php echo "$msg"; ?> <p><strong>Bazy danych i tabele na stronie</strong>:</p> <?php echo "$dbs"; ?> </BODY> </HTML> Ale zamiast tego - pojawia mi się tylko biały ekran - nawet bez tytułu strony z czego wnioskuje że nie dochodzi do zrobienia rzeczy między słowami HTML. RE: Problem z PHP i bazą danych - Dhofca - 18-03-2010 Proponuję poczytać jakieś podstawowe kursy PHP+MySQL, bo to co wklejasz jest wybrakowane i bezwartościowe. RE: Problem z PHP i bazą danych - Pawel1503 - 18-03-2010 Przepisałem (tym razem poprawnie) kod. Rzeczywiście w tamtych dużo brakowało. Ale przy tym też jest błąd bo nie można uzyskać danych z bazy danych. <?php $connection = mysql_connect("mysql.cba.pl", "***********", "**********") or die("Polaczenie nie powiodlo sie"); $dbs = mysql_list_dbs($connection) or die("Próba uzyskania listy bazy danych nie powiodła się !"); $db_list = "<ul>"; $i = 0; while($i < mysql_num_rows($dbs)) { $db_names[$i] = mysql_tablename($dbs, $i); $db_list .= "<li>$db_names[$i]"; $i++; } $db_list .= "</ul>"; ?> <HTML> <HEAD> <TITLE> Tabele</TITLE> </HEAD> <BODY> <p><strong>Bazy danych i tabele na stronie</strong>:</p> <?php echo "$db_list"; ?> </BODY> </HTML> RE: Problem z PHP i bazą danych - KowR - 18-03-2010 No, ale gdzie masz zapytanie do BD? ;/ Podstawy PHP + MySQL Tak budujesz zapytania: http://home.pl/dokumentacja/kursy/sql/pobieranie Musisz wskazać co i z której tabeli i ile chcesz pobrać... Np. 2-3 rekordy, albo wszystkie. Ty się łączysz z bazą danych, wybierasz bazę danych, ale nie wskazujesz z której tabeli chcesz pobrać. Edit: Tu masz przedstawiony skrypt pobierania danych z BD: http://www.docmirror.net/pl/php/ref.mysql.html RE: Problem z PHP i bazą danych - Pawel1503 - 18-03-2010 Ooo działa! - rzeczywiście trzeba było to zapytanie zrobić. Wielkie dzięki wszystkim! |