Avatar billede formu Nybegynder
12. maj 2011 - 11:21 Der er 6 kommentarer

træk ud fra database når der er komma mellem hver id

Hej Alle jeg håber i kan hjælpe mig. Jeg skal have trukket nogle produkter ud fra min database men det er sat en smule anderledes op end jeg plejer. jeg har insat nogle produkt id'er (fra en anden tabel) de er adskilt med komma'er fx: 48,47,49,44,

Nu skal jeg have udtrukket alle 4 id'er med en while løkke men hvordan gør jeg dog det ?

$query = mysqli_query($conn,"select * from products where pid ='".$result3['products']."'") or die (mysqli_error($conn));
            while($result=mysqli_fetch_array($query)){

echo $result['name'] ;

};

Jeg kan altså ikke lige finde ud af hvordan jeg får udtrukket alle sammen når de bare er adskilt med komma, nogle eksempler løsninger ?
Avatar billede The Real Yoda Juniormester
12. maj 2011 - 13:06 #1
Du kan gøre det ved

select * from products where pid ='".$result3['products']."'")


Du skal bare på $result3['products'] erstatte (komma mellemrum) med (' or pid=')

Kun det i paranteserne skal tages med
Avatar billede The Real Yoda Juniormester
12. maj 2011 - 13:06 #2
ved ik hvordan man skriver en replace i php.. derfor det lidt kryptiske svar
Avatar billede formu Nybegynder
12. maj 2011 - 13:33 #3
så måske noget i denne retning dette er ikke rigtig for det virker ikke men måske derhen af ?

$sql9 = "select products  from orders where oid ='".$_POST['orderid']."'";
$sqlQuery9 = mysqli_query($conn,$sql9) or die(mysqli_error($conn));
$result9 = mysqli_fetch_array($sqlQuery9);

               
        $number = $result9;
    $result6= str_replace(",", "", $result9);
       
       
               
$query5 = mysqli_query($conn,"select * from products where pid ='".$result6."'");
            while($result5=mysqli_fetch_array($query5)){
                   
                   
       
echo "<table width='800' border='0' style='background-color:#CCC;'>   


  <tr>
    <td width='200'>".$result5['pid']."</td>
    <td width='200'>".$result5['name']."</td>
    <td width='200'>".money($result5['price'],-2)." DKK </td>
  </tr>
  </table>
<br/>
   
 
    ";
    };
Avatar billede The Real Yoda Juniormester
12. maj 2011 - 14:05 #4
Det må være sådan her ..

  $result6= str_replace(", ", "'or id ='", $result9);
Avatar billede formu Nybegynder
12. maj 2011 - 14:34 #5
det virker desværre ikke der kommer ingen resultater
Avatar billede The Real Yoda Juniormester
12. maj 2011 - 15:05 #6
Du kan jo prøve at udskrive din SQl sætning ..
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Kurser inden for grundlæggende programmering

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester