Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [PHP]proste zapytania w petli
eminiasty
post 23.03.2017, 19:39:04
Post #1





Grupa: Zarejestrowani
Postów: 267
Pomógł: 0
Dołączył: 11.09.2015

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


Jak przebronac przez taki temat:
załozmy ze count = 3
przy tym zalozeniu mamy 3x select w jednej petli
teraz chce wyswietlic z kazdego zapytania product_id osobno, czyli musze 3x feach osobno?
tylko jak to wykonac?
-probowalem loczenia ciagow, numerujac zmienne lecz to nie wypalilo
Prosil bym o jakis przyklad gotowy bo napewno gdzies jest a ja nie wiem pod jakim haslem szukac.
Lub po prostu wskazowke jak zmierzyc sie z tym zagadnieniem

  1. for($i=0;$i<$count;$i++){
  2.  
  3. $queryI=$query.$i;
  4. $productx = filtrujDane($link,$_POST['productx'.$i.'']);
  5. $queryI="SELECT ".$prefix."product.product_id FROM ".$prefix."product WHERE product_active=1 AND ".$prefix."product.product_id = '".$productx."'";
  6. echo '<br>';
  7. echo '---'.$queryI.'----';
  8. echo '<br>';
  9. $result = mysqli_query($link,$queryI) or die(mysqli_error());
  10. $rowI=$row.$i;
  11. $rowI = mysqli_fetch_assoc($result);
  12. echo '<br>';
  13. var_dump($rowI['product_name']);
  14. }
Go to the top of the page
+Quote Post
viking
post 23.03.2017, 19:42:01
Post #2





Grupa: Zarejestrowani
Postów: 6 365
Pomógł: 1114
Dołączył: 30.08.2006

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


A po co robisz n zapytań? WHERE product.product_id IN (1,2,3); I dalej normalne wyświetlanie w pętli.


--------------------
Go to the top of the page
+Quote Post
eminiasty
post 23.03.2017, 20:24:01
Post #3





Grupa: Zarejestrowani
Postów: 267
Pomógł: 0
Dołączył: 11.09.2015

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


  1. $count = filtrujDane($link,$_POST['count']);
  2. $query1="SELECT ".$prefix."product.product_id FROM ".$prefix."product WHERE product_active=1 AND ".$prefix."product.product_id IN ('";
  3. for($i=0;$i<$count;$i++){
  4.  
  5. $productx = filtrujDane($link,$_POST['productx'.$i.'']);
  6. $query1 .= $productx;
  7. var_dump($query1);
  8. }
  9. $query1 .= ")";
  10. $result = mysqli_query($link,$query1) or die(mysqli_error());
  11. $row = mysqli_fetch_assoc($result);

Może i to dobre podjescie, aczkolwiek nie znam innej metody na laczenie ciagow niz .= a w tym przypadku wychodza gupoty.
Go to the top of the page
+Quote Post
Lord
post 23.03.2017, 20:31:13
Post #4





Grupa: Zarejestrowani
Postów: 239
Pomógł: 32
Dołączył: 10.03.2004

Ostrzeżenie: (10%)
X----


  1. $query1 .= $productx;


jezeli to te id co ci potrzebne

to

  1. $arr = [];
  2. for($i=0;$i<$count;$i++){
  3. $productx = filtrujDane($link,$_POST['productx'.$i.'']);
  4. $arr[] = $productx;
  5.  
  6. }
  7.  
  8. $query1="SELECT ".$prefix."product.product_id FROM ".$prefix."product WHERE product_active=1 AND ".$prefix."product.product_id IN ('".implode(",",$arr).")";


Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 16.04.2024 - 18:05