Avatar billede nigo_ Nybegynder
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.
Avatar billede nigo_ Nybegynder
11. april 2008 - 00:42 #1
Og det var koden til dette jeg søgte, hvis der en der har styr på det?

vh.
Avatar billede 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>
Avatar billede nigo_ Nybegynder
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.
Avatar billede 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());
Avatar billede nigo_ Nybegynder
14. april 2008 - 14:17 #5
'No database selected'

Tænkte det sku nok... Er jo ingen DB connect i den kode der :)
Avatar billede nigo_ Nybegynder
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
Avatar billede 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);
Avatar billede 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.)
Avatar billede nigo_ Nybegynder
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
Avatar billede nigo_ Nybegynder
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
Avatar billede nigo_ Nybegynder
14. april 2008 - 16:28 #11
http://img399.imageshack.us/img399/3420/sgningks0.jpg

SS fra resultat. Se nede i kommando linjen, "fin.php#vare_id", må være der fejlen er
Avatar billede 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.
Avatar billede 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.
Avatar billede nigo_ Nybegynder
14. april 2008 - 16:43 #14
ye har msn.

Godsholyforces@hotmail.com vi snakkes der så
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
IT-kurser om Microsoft 365, sikkerhed, personlig vækst, udvikling, digital markedsføring, grafisk design, SAP og forretningsanalyse.

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