Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> z tabeli pobieram jedno pole i w pętli while z każdym przebiegiem chce podać inną zmienną
scorpion10
post
Post #1





Grupa: Zarejestrowani
Postów: 59
Pomógł: 0
Dołączył: 8.07.2016

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


Witam ! Napotkalem problem, a mianowicie z tabbeli Mysql pobieram Selectem jedno pole i w yniku otrzymuje 4 rekordy. Chce je wyświetlić w petli while i z każdym przebiegem pętli nadać pobranemu polu inną nazwę zmiennej.

$kwer = SELECT id_pole FROM tabela WHERE id = $id;

while($rekord = mysql_fetch_array($kwer)){

$zmienna = $rekord[id_pole];

i tutaj jest problem ja z kolejnym przebiegiem nadać kolejną wartość pola po inną nazwę zmiennej
np:

$zmienna2 = $rekord[id_pole]; itd.

}

echo $zmienna;
echo $zmienna2;

Czy ktoś moze mi podpowiedzieć ? bo pod każy wynik pola potem muszę pobrac odpowiedni rekord z innej tabeli a tak to tylko moge ich wartośc wyswietlic na ekranie.

Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
IAmBoskiM
post
Post #2





Grupa: Zarejestrowani
Postów: 72
Pomógł: 11
Dołączył: 8.05.2016

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


Rozszerzenie MySQL jest przestarzałe i nie należy go używać. Od tego mamy teraz MySQLi oraz PDO.
  1. <?php
  2. try {
  3. $conn = new PDO ('mysql:host=nazwa_hosta;dbname=nazwa_bazy_danych', $dbuser, $pwd);
  4. } catch (PDOException $e) {
  5. die($e->getMessage());
  6. }
  7. $qry = $conn->query("SELECT id_pole FROM tabela WHERE id = $id");
  8. // Ejejej, tak to piszę i się zastanawiam, jak ty robiłeś tą bazę danych? Zwraca ci cztery rekordy, bo te wszystkie rekordy mają ID takie samo? Przecież ID jest normalnie unikatowe no ale OK
  9. $arr = $qry->fetchAll(PDO::FETCH_ASSOC); // rozszerzenie MySQL takiej funkcji chyba nie ma; fetchujesz wynik i tworzysz tablicę dwuwymiarową gdzie pierwsze indeksy to int 0-n gdzie to liczba wierszy minus 1 (-1) i każdy z tych indeksów to tablica asocjacyjna w tym wypadku z wartościami każdego wiersza
  10. for ($i = 0; $i < count($arr); $i++) {
  11. ${'zmienna' . $i} = $arr[$i]['id_pole']; // nie zapominaj o apostrofach!!!
  12. }
  13. $conn = null;
  14. ?>


Ten post edytował IAmBoskiM 8.07.2016, 10:32:33
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: 3.10.2025 - 03:40