11. april 2008 - 00:41
Der er
14 kommentarer
Søgefunktion til webshop
Hej folkens.
Er igang med at programmere en webshop som projekt, men har lidt knas med en søgefunktion.
Har forståeligt nogenlunde at få den til at søge, men problemet er dens søgeresultater, skal vises med en link til den vare/r den finder.
Søgningen er simpelt, og kan kun søge på navnet på varerne, mit problem er hvorn det skal sættes op hvis resultaterne skal vises med et link til varerne.
Tabellen er 'wares' og feltet er 'name'
Mvh.
11. april 2008 - 00:42
#1
Og det var koden til dette jeg søgte, hvis der en der har styr på det?
vh.
Slettet bruger
11. april 2008 - 01:13
#2
Søg funktionen:
<?PHP
if(isset($_POST['seekIt'])) { // Hvis søgningsknappen er sat
//mysql connection
$sql = "SELECT * FROM wares WHERE name LIKE '%".mysql_escape_string($_POST['seek'])."%' ORDER BY name";
$query = mysql_query($sql);
echo "<table width=\"100%\">";
echo "<tr><td>Navn</td><td>Link</td></tr>";
if(mysql_num_rows($query) > 0) {
while ($r = mysql_fetch_array($query)) {
echo "<tr><td>".$r['name']."</td><td><a href=\"#vare_id\">Se varen her</a></td></tr>";
}
} else {
echo "<tr><td colspan=\"2\">Din søgning gav ingen resultat.</td></tr>";
}
echo "</table>";
}
} else {
echo "Du mangler et søgeord!";
}
?>
Søg formularen:
<form action="filen_hvor_søgningen_er" method="post">
<input type="text" name="seek" /><br />
<input type="submit" name="seekIt" value="Søg" />
</form>
13. april 2008 - 14:33
#3
For denne fejl nu:
Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in C:\Program Files\Wamp Server\www\FKPEDB\phpstuff\find.php on line 10
Din søgning gav ingen resultat.
Slettet bruger
14. april 2008 - 14:09
#4
Prøv ret (så kan vi måske finde fejlen):
$query = mysql_query($sql);
->
$query = mysql_query($sql) or die(mysql_error());
14. april 2008 - 14:17
#5
'No database selected'
Tænkte det sku nok... Er jo ingen DB connect i den kode der :)
14. april 2008 - 14:22
#6
Ok.
Fik sat DB connect ind og nu virker det (ikke).
Den melder ingen fejl nu, men viser intet på søgningen kun screen med Navn Link uden indhold. Og søger på noget der findes, hvis den ikke finder noget melder den fejl som den skal.
Har du en mail? Du kan evt få login til webserver og db, måske lidt lettere for dig
Slettet bruger
14. april 2008 - 14:22
#7
//mysql connection
Skal jo lige omsættes til din connection, evt. hvis du har en fil du includer.
Eller så her:
$host = "localhost";
$user = "root";
$pass = "";
$db = "min_db";
mysql_connect($host, $user, $pass);
mysql_select_db($db);
Slettet bruger
14. april 2008 - 14:25
#8
Har mail, men ønsker ikke adgang til din web-server. For usikkert for dig.
Under $query [blah] [blah] linjen prøv indsætte:
echo "<br />".$sql."<br />";
Prøv så siden igen, og så prøv kopier den linje ind i din database under -> SQL feltet.
Hvad melder den tilbage her?
(Er først hjemme igen, om ca. 1½ time -> prøv evt. se om det er fordi jeg har sat den til at søge på noget forkert eller lign.)
14. april 2008 - 16:22
#9
Ok.
Det er nu bare en privat webserver, eneste du for adgang til er dir på et subdirectory gennem FTP, ikke rigtig noget du kan gøre anyways, MySQL db'n kan du heller ikke rode med det store. Mere hvis det kunne hjælpe dig til et overblik.
Prøver lige dette
14. april 2008 - 16:25
#10
SELECT * FROM wares WHERE name LIKE '%200%' ORDER BY name
Virker fint på phpMyAdmin, den finder varen ?
Kommer stadig intet frem under søgeresultatet
Slettet bruger
14. april 2008 - 16:36
#12
Okay så bare lad mig få adgang - ville bare ikke ha' du skulle give adgang til din 'helt' eget web-server.
Har du msn? For så kan du give mig adgangsdataen over der.
Slettet bruger
14. april 2008 - 16:37
#13
Det link #vare_id er noget jeg har sat på, da jeg ikke var sikker på hvad id'et hed for varerne.
14. april 2008 - 16:43
#14
ye har msn.
Godsholyforces@hotmail.com vi snakkes der så
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.