Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [PHP][MYSQL]Podstawowe zapytanie do bazy
Forum PHP.pl > Forum > Przedszkole
albin
Witam wszystkich serdecznie.

Proszę bardzo o drobna pomoc w dość (dla zebranych tutaj winksmiley.jpg ) łatwej sprawie hihi.
Otoż mam problem z zapytaniem do bazy. Przedstawie wam swój kod i proszę abyście powiedzieli mi jak takie zapytanie ma wyglądać. Próbowałem już wszystkiego,
to co znalazłem w książkach i w internetowych kursach/poradnikach nie działa a ja dostałem już zonka haha.gif . (Nie jest to problem techniczny na 100% gdyż korzystałem z pewnego gotowego skrypty który zawierał
plik "install" i po wprowadzeniu tam danych uzytkownika bazy wszystko ladnie dzialalo)


Schemat bazy:

Baza danych(nazwa): test
Tabela: dane
Kolumny: id , tresc

--- ---

Baza stworzona:

create database test;
create table dane
( id int unsigned not null auto_increment primary key,
tresc char(100) not null
);

--- ---

Kod html/php

<html>
<head>
<meta http-equiv="content-language" content="pl">
<title>Nauka BD</title>
</head>
<body>
<?php
$db = mysql_connect('localhost', 'Admin', 'Pass', 'test');

*** i tu jest zonk smile.gif ***

?>
</body>
</html>

Udaje się nawiazać połączenie z bazą ale nie potrafie w żaden sposób wyświetlić żadnej jej zawartości sad.gif
Proszę bardzo o pomoc (Wiem że to troszkę śmieszne i jest to kwestia 2 czy 3 linijek kodu ale naprawde nic mi nie działa heh)

Jak mam np. wyświetlić całą klumnę "tresc" ?

Dlatego kieruje się o pomoc do znawców tematu.

Pozdrawiam serdecznie i czekam na odpowiedź! smile.gif
Andaramuxo
Poszukaj opcji SELECT, chyba, że chcesz gotowca? :

http://www.kalfa.pl/wiki/index.php/SELECT_-_polecenie_MySQL
albin
dzieki za odpowiedz, prosil bym o czystego gotwca jesli mozna hihi biggrin.gif ( kombinowalem z tym" select * from "ale mialem tylko jeden wynik ERROR haha.gif), jak tylko sie pojawi to zaraz sprawdze czy dziala smile.gif zdrowka;
Pawel_W
hmm nie wiem czy dobrze nawiązujesz połączenie (w manualu nie znalazłem nic o 4 parametrze)

spróbuj tak:
  1. <?php
  2. $db = mysql_connect('localhost', 'Admin', 'Pass');
  3. ?>


a później wyświetl zawartość za pomocą zapytania (wyżej masz podpowiedź)

EDIT:
gotowiec:

  1. <?php
  2. $q = "SELECT * FROM dane";
  3. $r = mysql_query($q);
  4. while($row = mysql_fetch_array($r))
  5. {
  6. echo $row['tresc'];
  7. }
  8. ?>
bmL
// EDIT zanim skończyłem posta to odpisały już 3 osoby winksmiley.jpg
Samo utworzenie bazy i tabeli danych nie wystarczy bo tabela jest pusta musisz jeszcze poczytać o dodawaniu rekordów do tabeli i pobieraniu ich do tego na początku będziesz używał mysql_query - > instert/select/update. Jedyne co mogę zrobić to odesłać Cie do tutoriala:
Temat: linkiKursy_dla_poczatkujacych
Drugi tutorial mysql w tym poście wydaje się całkiem przyzwoity. Kiedy już nauczysz się posługiwać mysql proponuje zapoznać się z biblioteką mysqli, która jest przede wszystkim bezpieczniejsza od zwykłych gołych procedur.
albin
no i dalej jest problem sadsmiley02.gif

Cytat
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in D:\Program Files\WebServ\httpd\index.php on line 11


linia 11 to :
Cytat
while($row = mysql_fetch_array($r))


linia z gotowca ktory zaplikowal pawel,

a do bazy wprowadzilem dane , 1 rkord chyba jak to sie mowi winksmiley.jpg tak czy siak pusta nie jest
Andaramuxo
Kod
while ($row = mysql_fetch_array($r, MYSQL_ASSOC))

To MYSQL_ASSOC możesz zmienić na inną opcje. smile.gif
albin
zmieniłem tą linijkę ale dalej ten sam błąd blinksmiley.gif , ni kumam co jest źle ,hmmm
Andaramuxo
Weź wklej cały kod.
albin
Cytat
<html>
<head>
<meta http-equiv="content-language" content="pl">
<title>Nauka BD</title>
</head>
<body>
<?php
$db = mysql_connect('localhost', 'Admin', 'Pass', 'test');
$q = "SELECT * FROM dane";
$r = mysql_query($q);
while ($row = mysql_fetch_array($r, MYSQL_ASSOC))
{
echo $row['tresc'];
}
?>
</body>
</html>


cały kodzikxD co to może być kurcze,
Andaramuxo
Kod
<html>
<head>
<meta http-equiv="content-language" content="pl">
<title>Nauka BD</title>
</head>
<body>
<?php
$db = mysql_connect('localhost', 'Admin', 'Pass');
$baza = mysql_select_db('test');;
$q = "SELECT * FROM `dane`";
$r = mysql_query($q);
while ($row = mysql_fetch_array($r, MYSQL_ASSOC))
{
echo $row;
}
?>
</body>
</html>


Hehe, i Ty się dziwiłeś co jest źle? TO dobrze, że pokazałeś cały kod.
echo $row['tekst'];
W miejsce "tekst" wpisujesz nazwę Twojej kolumny w bazie.
bmL
  1. <?php
  2. $db = mysql_connect('localhost', 'Admin', 'Pass', 'test') or die('Blad nie mozna polaczyc z baza danych: <br>'.mysql_error());
  3.  
  4. $q = "SELECT * FROM dane";
  5.  
  6. $r = mysql_query($q);
  7. while ($row = mysql_fetch_array($r, MYSQL_ASSOC))
  8. {
  9. echo $row['tresc'];
  10. }
  11. ?>

Sprawdź jaki to da wynik.

EDIT: bazę danych powinno się raczej wybierać oddzielnie dlatego:
  1. <?php
  2. $db = mysql_connect('localhost', 'Admin', 'Pass') or die('Blad nie mozna polaczyc z baza danych: <br>'.mysql_error());
  3. mysql_select_db('test') or die ('Nie mozna wybrac bazy danych: <br>'.mysql_error());
  4.  
  5. $q = "SELECT * FROM dane";
  6.  
  7. $r = mysql_query($q);
  8. while ($row = mysql_fetch_array($r, MYSQL_ASSOC))
  9. {
  10. echo $row['tresc'];
  11. }
  12. ?>
roobik
Ja zaś proponuję, by info do łączenia z bazą pozostawić w jakimś innym pliku, nazwać go np. config.php, a w nim to, co pisze wyżej bmL
A w pliku zostaw:
  1. <?php
  2. include ('config.php');
  3. $zapytanie = "SELECT * FROM dane";
  4.  $wynik = mysql_query($zapytanie);
  5.  while($r = mysql_fetch_array($wynik)) {
  6.  $id = $r['id'];
  7.  $tresc = $r['tresc'];
  8.  }
  9.  echo 'ID: '.$id.'<br>TREŚĆ '.$tresc.'<br><br>';
  10. ?>

oczywiście mam nadzieję, że masz już jakieś dane questionmark.gif winksmiley.jpg
albin
yeah! biggrin.gif działa!!! wyswietliło mi zawartość z kolumny yahoo.gif ale czadzik biggrin.gif , dzieki wielkie wszystkim , dałem cały kod od Andaramuxo - dzieki wielkie musze przestudiwac to dokladnie hihi , dopisałem nazwe kolumny i jest smile.gif , no teraz jeszcze tylko porzadkowanei danych mnie czeka i ja kwyswietlic tylko jeden rekord itp. no ale to juz musze teraz wiecej doczytac o tym wszystkim. Jak bedzie jeszcze jakis problem a ( bedzie pewnie biggrin.gif ) to tez zglosze sie o pomoc biggrin.gif a pozniej jeszce zmiana zawartosci! to dopiero bedzie roboty rolleyes.gif , zdrowka i dziekuje serdecznie;
Andaramuxo
Poczytaj kursy, ja też się z tym bawie od kilku(nastu?) dni i za wiele nie wiem. ^^
(opcja POMÓGŁ nie boli ^^)
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.