Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: powiązanie mysql z php
Forum PHP.pl > Forum > Bazy danych > MySQL
tedew
witam
ostatnio postanowiłem sie pobawić z bazami danych zaisnatlowałem serwer apache , php i mysql .
mam problem z wyswietleniem bazy danych w przegladarce
baza danych wtglada tak :

CREATE TABLE emp
(
id tinyint(4) DEFAULT '0' NOT NULL auto_increment,
first varchar(20),
last varchar(20),
adress varchar(255),
position varchar(50),
PRIMARY KEY (id),
UNIQUE id (id)
)

natomiast skr w php tak :

?php
mysql_connect('localhost','','');
mysql_select_db('emp');
$query="select first from emp";
$result=mysql_query($query);
echo "<TABLE BORDER=\"0\">\n";
while($row = mysql_fetch_array($result)) {

echo "<TR><TD>" . $row['first'] . "</TD></TR>\n";
}
echo "<TABLE>\n";
?>

i po wpisanie w IE - localhost
dostaje :
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in C:\usr\strona\index.php on line 7

nie wiem o co chodzi z tym error`em Może ktos kto sie na tym zna bedzie potrfił pomóc

pozdro
tumczasty
jest błąd w treści zapytania (tabela emp nie istnieje?), ew. nie istnieje baza emp albo w ogóle nie połączyłeś się z bazą... (?)
trzeba wykryć te błędy:
  1. <?php
  2. if(!mysql_connect('localhost','','')) echo'Nie można połączyć się z bazą.'; else {
  3. if(!mysql_select_db('emp')) echo'Nie można wybrać bazy.'; else {
  4. if(($result=mysql_query('select first from emp'))==0) echo mysql_error(); else {
  5. echo &#092;"<TABLE BORDER=\"0\\">n\";
  6. while($row = mysql_fetch_array($result)) {
  7.  
  8. echo &#092;"<TR><TD>\" . $row['first'] . \"</TD></TR>n\";
  9. }
  10. echo &#092;"</TABLE>n\";
  11. }
  12. }
  13. }
  14.  
  15. ?>

(to &# 33; zamień na wykrzyknik !)

jak na mój gust mógłbyś wymyślić temat lepiej opisujący treść postu
tedew
witam
@tumczasty
dzieki za odp smile.gif
teraz skr ma sie tak

<?php
if(!mysql_connect('localhost','',''))
echo'Nie można połączyć się z bazą.';
else {
if(!mysql_select_db('emp'))
echo'Nie można wybrać bazy.';
else {
if(($result=mysql_query('select first from emp'))==0)
echo mysql_error();
else {
echo "<TABLE BORDER=\"0\">\n";
while($row = mysql_fetch_array($result)) {

echo "<TR><TD>" . $row['first'] . "</TD></TR>\n";
}
echo "</TABLE>\n";
}
}
}

?>


a dostaje taka odp
Nie można wybrać bazy. blink.gif

baza nazywa sie php a w niej jest tab emp , czyl jest baza i tab

questionmark.gifquestionmark.gifquestionmark.gifquestionmark.gif

pozdro


edit
zmienilem mysql_select_db('emp') na mysql_select_db('php') bo to chyba tu miala byc wpisana nazwa bazy a nie tab smile.gif
ale i tak dostaje kumunikat ze "Nie można wybrać bazy."
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.