Shiibopi Skrevet 23. mars 2009 Del Skrevet 23. mars 2009 (endret) Hei. Jeg prøver å få til ett søkescript for en Vare-tabell jeg har lagd. Hittil så fungerer den ca ok, men si at jeg har 2 varer som begynner på ordet: "God". Da vil jeg at begge varene skal bli vist fram hvis en bruker søker på "God". Noe den ikke gjør for øyeblikket. <?php mysql_connect("localhost", "bruker", "pass") or die("Could not connect: " . mysql_error()); mysql_select_db("kurs5606"); $varesok = $_POST['search']; if(empty($varesok)) { echo 'Fyll inn alle boksene'; } elseif(!empty($varesok)) { $sql = "SELECT * FROM W1GVare Where VareNavn LIKE '%$varesok%' "; $resultat = mysql_query($sql); if (mysql_num_rows($resultat) < 1 ) { echo "Varen: $varesok eksisterer ikke!"; } else { $row = mysql_fetch_array($resultat); echo ("VareNR:$row[VareNR]<br /> VareNavn: $row[VareNavn]<br /> Beskrivelse: $row[Beskrivelse]<br /> Pris: $row[Pris] kr<br /><a href='index.php?page=varer'>Nytt søk?</a>"); } } ?> Noen som har noen forslag til hvordan jeg gjør dette? Endret 23. mars 2009 av Shiibopi Lenke til kommentar
OIS Skrevet 23. mars 2009 Del Skrevet 23. mars 2009 Du bør escape strengvariabler du skal bruke i SQL spørringer i det minste. $escapedVaresok = mysql_real_escape_string($varesok); $sql = "SELECT * FROM W1GVare Where VareNavn LIKE '%$escapedVaresok%' "; Og du må loope resultatet for å få mer enn bare første rad. while ($row = mysql_fetch_array($resultat)) { echo "VareNR:{$row['VareNR']}<br /> VareNavn: {$row['VareNavn']}<br /> Beskrivelse: {$row['Beskrivelse']}<br /> Pris: {$row['Pris']} kr<br />"; } echo '<a href='index.php?page=varer'>Nytt søk?</a>'; Lenke til kommentar
Anbefalte innlegg
Opprett en konto eller logg inn for å kommentere
Du må være et medlem for å kunne skrive en kommentar
Opprett konto
Det er enkelt å melde seg inn for å starte en ny konto!
Start en kontoLogg inn
Har du allerede en konto? Logg inn her.
Logg inn nå