SELFPHP: Version 5.8.2 Befehlsreferenz - Tutorial – Kochbuch – Forum für PHP Einsteiger und professionelle Entwickler

SELFPHP


Professional CronJob-Service

Suche



CronJob-Service    
bei SELFPHP mit ...



 + minütlichen Aufrufen
 + eigenem Crontab Eintrag
 + unbegrenzten CronJobs
 + Statistiken
 + Beispielaufrufen
 + Control-Bereich

Führen Sie mit den CronJobs von SELFPHP zeitgesteuert Programme auf Ihrem Server aus. Weitere Infos



:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 

:: Anbieterverzeichnis ::

Globale Branchen

Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP  

 

:: Newsletter ::

Abonnieren Sie hier den kostenlosen SELFPHP Newsletter!

Vorname: 
Name:
E-Mail:
 
 

Zurück   PHP Forum > SELFPHP > MySQL/MySQLi

MySQL/MySQLi Anfänger, Fortgeschrittene oder Experten können hier Fragen und Probleme rund um MySQL/MySQLi diskutieren

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 24.10.2003, 02:12:34
mirch-online mirch-online ist offline
Anfänger
 
Registriert seit: Oct 2003
Beiträge: 3
"SUCHE" Script

Hallo
Ich bin seit nun schon einigen Stunden auf der Suche nach einem Script, mit dem ich meine Datenbank nach einem bestimmten begriff durchsuchen lassen kann und dann eine entsprechende Ausgabe bekomme. Leider hab ich bisher nix passendes gefunden - kann mir vielleicht jemand helfen? Wäre echt nett!
Gruß Mirko
Mit Zitat antworten
  #2  
Alt 24.10.2003, 10:35:20
diver-network diver-network ist offline
Junior Member
 
Registriert seit: Apr 2003
Ort: TÜ
Beiträge: 337
Hallo Mirko,

willkommmen bei SelfPHP.
Zu Deiner Frage bzgl. Suchskript in einer DB:
Es gibt keins.
Felder bzw. den Inhalt einer Datenbank frägt man mit Hilfe von SQL Querys (Abfragen) ab.
Diese sind, für "Suchskripte" folgendermaßen aufgebaut:
SELECT <feld1>,<feld2> FROM <tabellenname> WHERE <feld1> LIKE '%<gesuchter Wert1>%' [[AND|OR] <feld2> LIKE '%<gesuchter Wert2>%']

SELECT: Gebe mir den Inhalt aller Felder
<feld1> des Feldes (der Spalte) 1
FROM <tabellenname> der Tabelle
WHERE einschränkende Bedingung, "wo"
<feld1> LIKE der Wert des Feldes 1 folgendes enthält
'%<gesuchter Wert1>%' der entsprechende Wert, wobei die "%" eine generische Suche auslösen, sprich es wird alles gesucht, wo der Begriff in irgend einer Form drin steht, auch "mittendrin". Lässt Du die "%" weg wird nach dem exakten Begriff gesucht, wobei z.T. GrOsS-kLeInScHrEiBuNg vernachlässigt wird
[[AND|OR]... weitere Einschränkungen zur Suche

Schau hierzu aber mal in der Hilfe zu MySQL nach, dort steht der korrekte Aufbau von SQL Querys auch drin. Ansonsten gibt es genug Tutorials im Internet bzw. Bücher zu diesem Thema.

HTH,

Andy
__________________
Delphine, Wale, Orcas und mee(h)r:
tauchen in Alor/Indonesien
http://www.alor-dive.com
Mit Zitat antworten
  #3  
Alt 24.10.2003, 13:43:21
mirch-online mirch-online ist offline
Anfänger
 
Registriert seit: Oct 2003
Beiträge: 3
Ja, das hab ich schon versucht, leider nur mit eingeschränktem Erfolg!
Ich poste mal den Code - villeicht hab ich irgendwo en Fehler drin!

<?php
include("db_connect1.php");
echo "Ihre Suche nach $suchwort ergab folgende Ergebnisse: <br>";
// an dieser Stelle wird das Suchwort aus dem Formular korrekt übergeben und ich bekomm auch die richtige Ausgabe
$abfrage="SELECT * FROM getraenke WHERE sorte LIKE '%suchwort%'";
$ergebnis=mysql_query($abfrage) or die (mysql_error());
while($row=mysql_fetch_array($ergebnis))
{
?>
<table border="1">
<tr>
<td width="277">
<?echo $row->sorte;?>
</td>
<td width="90">
<p align="center"><img src="/Andres/Web/<?=$row->code;?>.jpg" width="80" height="60" alt="" border="0">
</td>
</tr>
</table>
<?php
}
?>
Mit Zitat antworten
  #4  
Alt 24.10.2003, 15:42:35
diver-network diver-network ist offline
Junior Member
 
Registriert seit: Apr 2003
Ort: TÜ
Beiträge: 337
Hi,

das Skript sieht auf den ersten Blick eigentlich gut aus, daher jetzt mal eine Aufzählung möglicher Fehlerquellen:
- Verbindung zur Datenbank existiert nicht (mysql_connect() UND mysql_select_db())
- Feldnamen/ Tabellennamen falsch geschrieben
- Bei der Funktion mysql_fetch_array() muß anscheinend der Feldname EXAKT so geschrieben sein, wie er in der Datenbank steht. Hierzu gab es aber verschiedene Threads hier im Forum, suche mal nach "chris17" als Antwortenden, er hatte diese Antwort ca. vor 1 Monat
- Kein passender Datensatz in der Datenbank

edit:
Was ich gerade gesehen habe: Du schreibst ... LIKE '%suchwort%'"; !! Warum nicht LIKE '%$suchwort%' ?? $suchwort enthält doch Deinen Suchbegriff, nicht "suchwort" ohne $



Was auch nicht gut ist, ist Dein SQL Statement. SELECT * sollte man NIE machen. Ein Grund ist z.B. daß Du dadurch nicht genau weißt, welche Felder in welcher Reihenfolge zurückliefert werden. Mal abgesehen davon, daß Du erst mal 100 Spalten ausgibst, davon aber nur 1 benötigst (Beispiel).

HTH,

Andy

P.S.: Wenn Du nähere Fehlerbeschreibungen liefern würdest wäre es einfacher. Z.B. Fehlermeldungen, die Du bekommst, bis wohin läuft Dein Skript (kannst Du im Zweifelsfall ja auch mit echo("hier bin ich"); prüfen), wie ist die relevante Tabelle aufgebaut, da man LIKE nur bei CHARakterbasierten Feldern nehmen sollte, bei INTeger Feldern ist ein "=" Zeichen angebrachter,....
__________________
Delphine, Wale, Orcas und mee(h)r:
tauchen in Alor/Indonesien
http://www.alor-dive.com

Geändert von diver-network (24.10.2003 um 15:46:56 Uhr)
Mit Zitat antworten
  #5  
Alt 24.10.2003, 16:15:40
mirch-online mirch-online ist offline
Anfänger
 
Registriert seit: Oct 2003
Beiträge: 3
Jaaaa - an dem $ hats gelegen, allerdings drängt sich jetz das Problem auf, es werden entsprechend viele Datensätze ausgegeben, allerdings ohne Inhalt, d.h. ich erhalte eine Tabelle mit mehreren leeren Spalten als Ergebnis. Die Anzahl der Zeilen entspricht der kerrekten Anzahl an Datensätzen in der Datenbank!
Gruß Mirko
Mit Zitat antworten
Antwort


Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
 
Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind aus.
[IMG] Code ist aus.
HTML-Code ist aus.

Gehe zu


Alle Zeitangaben in WEZ +2. Es ist jetzt 22:01:18 Uhr.


Powered by vBulletin® Version 3.8.3 (Deutsch)
Copyright ©2000 - 2021, Jelsoft Enterprises Ltd.


© 2001-2021 E-Mail SELFPHP OHG, info@selfphp.deImpressumKontakt