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

SELFPHP


Professional CronJob-Service

Suche


International PHP Conference


WebTech Conference



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



PHP Summit


Software Architecture Summit


:: Buchempfehlung ::

Handbuch der Java-Programmierung

Handbuch der Java-Programmierung zur Buchempfehlung
 
HTML5 Days


JavaScript Days


:: 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:
 
 

Deine Leidenschaft ist die Unterwasserfoto-grafie?


Dann ist Qozido genau das Richtige für Dich!

Die Bilderverwaltung mit Logbuch für Taucher und Schnorchler ist da!

www.qozido.de

 


Zurück   PHP Forum > SELFPHP > PHP Grundlagen

PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden

Antwort
 
Themen-Optionen Ansicht
  #1  
Alt 28.12.2006, 14:13:21
Benutzerbild von Swoosh
Swoosh Swoosh ist offline
Junior Member
 
Registriert seit: Oct 2006
Ort: Crailsheim / SHA / Stuttgart
Alter: 22
Beiträge: 388
Swoosh befindet sich auf einem aufstrebenden Ast
Swoosh eine Nachricht über ICQ schicken Swoosh eine Nachricht über MSN schicken
Suche

hallo

ich will eine suche machen ich hab eine mysql und die will ich durchsuchen können aber mit einem WHERE usw. geht das doch gar nicht?!
Oder kann mir jemand mal ein Beispiel zeigen?

Danke Swoosh
Mit Zitat antworten
  #2  
Alt 28.12.2006, 14:36:04
Andes Andes ist offline
Member
 
Registriert seit: Jun 2006
Ort: Bayern
Alter: 46
Beiträge: 930
Andes befindet sich auf einem aufstrebenden Ast
AW: Suche

Warum soll das nicht gehen? Ist auch keine andere Abfrage.
PHP-Code:
//das würde dir alle Datensätze liefern wo in einem String 'hans' vorkommt
SELECT nameort FROM tabelle WHERE name LIKE '%hans%' OR ort LIKE '%hans%';

//das würde dir alle Datensätze liefern wo am Ende eines String 'hans' vorkommt
SELECT nameort FROM tabelle WHERE name LIKE '%hans' OR ort LIKE '%hans';

//das würde dir alle Datensätze liefern wo am Anfang eines String 'hans' vorkommt
SELECT nameort FROM tabelle WHERE name LIKE 'hans%' OR ort LIKE 'hans%'
Fragt sich nur ob dies für deine Zwecke ausreichend ist oder du dich lieber mit Volltextsuche beschäftigen solltest.
__________________
Grüße Andes
Mit Zitat antworten
  #3  
Alt 28.12.2006, 21:25:23
Heinrich Heinrich ist offline
Member
 
Registriert seit: Feb 2006
Beiträge: 874
Heinrich befindet sich auf einem aufstrebenden Ast
AW: Suche

Die Volltextsuche (hier in den Feldern Titel und Text):
PHP-Code:
mysql_query ("SELECT titel, text FROM buecher WHERE MATCH (titel, text) AGAINST ('$suchwort' IN BOOLEAN MODE) ORDER BY irgendwas ASC;"
Mit Zitat antworten
  #4  
Alt 28.12.2006, 23:39:08
Benutzerbild von Swoosh
Swoosh Swoosh ist offline
Junior Member
 
Registriert seit: Oct 2006
Ort: Crailsheim / SHA / Stuttgart
Alter: 22
Beiträge: 388
Swoosh befindet sich auf einem aufstrebenden Ast
Swoosh eine Nachricht über ICQ schicken Swoosh eine Nachricht über MSN schicken
AW: Suche

danke, ich hab auch mal schon eine gemacht.
Das Problem bei der wo ich gemacht hab ist ich frage ab in 'artist', 'title', 'album'.
Also so wie man jetzt schon merkt eine suche für lyrics.
Jetzt findet der wenn ich zb 'bushido' eingebe alles von bushido, nur wenn ich jetzt den song 'augenblick' haben möchte geb ich ein 'suche.php?search=bushido+augenblick' findet der gar nichts, ich weiss aber nicht warum?!

Hier mal der Code:
PHP-Code:
<?
                $string 
stripslashes($_GET['search']);
                
$search = @mysql_real_escape_string($string);

                
$sql "SELECT * FROM `cb_galerie` WHERE `title` LIKE '%".$search."%' || `desc` LIKE '%".$search."%'";
                
$res mysql_query($sql) or die(mysql_error());
              
                while(
$row mysql_fetch_assoc($res)) {
                    echo 
"<b><a href=\"result.php?see=".$row[id]."\">" $row[title] . "</a></b><br>\n";
                    echo 
nl2br(wordwrap($row['desc'], 75));
                    echo 
"<br><br>\n";
                }
?>
Mit Zitat antworten
  #5  
Alt 28.12.2006, 23:49:30
Benutzerbild von Swoosh
Swoosh Swoosh ist offline
Junior Member
 
Registriert seit: Oct 2006
Ort: Crailsheim / SHA / Stuttgart
Alter: 22
Beiträge: 388
Swoosh befindet sich auf einem aufstrebenden Ast
Swoosh eine Nachricht über ICQ schicken Swoosh eine Nachricht über MSN schicken
AW: Suche

heinrich ich hab jetzt mal das von dir genommen und ergibt mir diesen fehler!

Zitat:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'desc) AGAINST ('bushido augenblick' IN BOOLEAN MODE) ORDER BY title ASC' at line 1
PHP-Code:
<?
        
include('cbonline/inc/cfg.inc');
        include(
'axel/inc/fnc.inc');
         include(
'axel/inc/tpl.inc'); 
      
          
$search $_GET['search'];
      
          if(!isset(
$search)) {
            echo 
'Du musst ein Suchwort angeben!';
        } else {
            
$string stripslashes($search);
            
            
$sql "SELECT * FROM `cb_galerie` WHERE MATCH (title, desc) AGAINST ('".$search."' IN BOOLEAN MODE) ORDER BY title ASC";
            
$res mysql_query($sql) or die(mysql_error());
            
            while(
$row mysql_fetch_assoc($res)) {
            
                echo 
$row[title];
            }
            
        }
?>

Geändert von Swoosh (28.12.2006 um 23:51:10 Uhr)
Mit Zitat antworten
  #6  
Alt 29.12.2006, 00:37:00
Andes Andes ist offline
Member
 
Registriert seit: Jun 2006
Ort: Bayern
Alter: 46
Beiträge: 930
Andes befindet sich auf einem aufstrebenden Ast
AW: Suche

Dein Suchbegriff ist ja auch bushido+augenblick und so sieht dann halt auch dein Query aus.
PHP-Code:
SELECT .... WHERE´titel LIKE '%bushido+augenblick%' 
Du müsstest also erst die Suchbegriffe von ein anderer trennen.

Desc ist keine gute Feldbezeichnung, da es ein fester Begriff in Mysql ist.
__________________
Grüße Andes
Mit Zitat antworten
  #7  
Alt 30.12.2006, 03:07:05
Benutzerbild von Swoosh
Swoosh Swoosh ist offline
Junior Member
 
Registriert seit: Oct 2006
Ort: Crailsheim / SHA / Stuttgart
Alter: 22
Beiträge: 388
Swoosh befindet sich auf einem aufstrebenden Ast
Swoosh eine Nachricht über ICQ schicken Swoosh eine Nachricht über MSN schicken
AW: Suche

also wenn ich

PHP-Code:
<?
$search 
bushido+augenblick
$string 
stripslashes($search); 
echo 
$string;
?>
gibt er mit 'bushido augenblick' aus!
Weiss keiner was zu dem Fehler von der Abfrage von Heinrich!

Danke, Swoosh

Geändert von Swoosh (30.12.2006 um 03:08:43 Uhr)
Mit Zitat antworten
  #8  
Alt 30.12.2006, 03:20:24
Benutzerbild von Swoosh
Swoosh Swoosh ist offline
Junior Member
 
Registriert seit: Oct 2006
Ort: Crailsheim / SHA / Stuttgart
Alter: 22
Beiträge: 388
Swoosh befindet sich auf einem aufstrebenden Ast
Swoosh eine Nachricht über ICQ schicken Swoosh eine Nachricht über MSN schicken
AW: Suche

Funktioniert jetzt wunderbar, nur wenn ich eingeb ?search=bushido+sonnenbank+flavour findet er alles von Bushido, er soll dann aber nur Bushido Sonnenbank Flavout finden, und wenn ich nur bushido mach alles von bushido!

Mein Code:

PHP-Code:
<?php
        
include('cbonline/inc/cfg.inc');
        include(
'axel/inc/fnc.inc');
         include(
'axel/inc/tpl.inc'); 
      
          
$search $_GET['search'];
      
          if(!isset(
$search)) {
            echo 
'Du musst ein Suchwort angeben!';
        } else {
            
$string mysql_real_escape_string(stripslashes($search));
            
            
$sql "SELECT * FROM `cb_galerie` WHERE MATCH (`desc`,`title`) AGAINST ('%".$search."%' IN BOOLEAN MODE)";
            
$res mysql_query($sql) or die(mysql_error());
            
            while(
$row mysql_fetch_assoc($res)) {
            
                echo 
$row[title];
                echo 
'<br>';
            }
            
        }
?>

Danke, Swoosh
Mit Zitat antworten
  #9  
Alt 30.12.2006, 09:33:53
Andes Andes ist offline
Member
 
Registriert seit: Jun 2006
Ort: Bayern
Alter: 46
Beiträge: 930
Andes befindet sich auf einem aufstrebenden Ast
AW: Suche

Ließ dir dazu mal die Doku durch. Dort wird auch erklärt welche Volltextoperatoren für was verwendet werden können. Mysql-Volltextsuche

Zitat:
gibt er mit 'bushido augenblick' aus!
Dann sieht halt dein Query so aus.
PHP-Code:
SELECT .... WHERE´titel LIKE '%bushido augenblick%' 
Damit findest du dann nur Datensätze wo dieser Teilstring enthalten ist.
__________________
Grüße Andes
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

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
suche php-lösung für cms und unternehmensportal susi Off Topic Area 5 03.04.2006 15:59:28
Überlegungen einer sinnvollen Suche Tikiwiki Off Topic Area 4 15.12.2005 10:57:44
Suche utf-8 odessa MySQL 5 31.10.2005 12:53:43
Suche Programmieren Black-Apfelkuch PHP Grundlagen 5 19.04.2004 23:01:01
such script; suche nach plz patrickn MySQL 9 16.08.2003 01:22:29


Alle Zeitangaben in WEZ +2. Es ist jetzt 01:28:47 Uhr.


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


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