php.de

Zurück   php.de > Webentwicklung > PHP Einsteiger > PHP Tipps 2004

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 22.10.2004, 20:53  
Gast
 
Beiträge: n/a
Standard Datenbankeintrag mittels if-Bedingung auslesen

Hallo,

ich möchte eine Zeile, sofern sie mit "a" anfängt, aus meiner Datenbank auslesen.
Mometan würde ich ja nur die Zeile die ein "a" enthält auslesen:

Code:
if ($zeile[5] == "a")
  { ..}
Bei DOS würde ich als "Platzhalter" einfach ein "*" an das a hängen.
Wie mache ich das bei PHP, dass auch alle nachfolgenden Zeichen mit ausgelesen werden?

Schonmal Danke!
Gruß, Mathias
 
Sponsor Mitteilung
PHP Code Flüsterer

Registriert seit: 21.08.2005
Beiträge: 4682
PHP-Kenntnisse:
Fortgeschritten

Alt 22.10.2004, 21:17  
Gast
 
Beiträge: n/a
Standard

ein %-Zeichen - SELECT * FROM tabelle WHERE feldname LIKE ('%a%');
 
Alt 22.10.2004, 21:17  
Gast
 
Beiträge: n/a
Standard

..
 
Alt 22.10.2004, 21:29  
Gast
 
Beiträge: n/a
Standard

also irgendwas läuft da noch schief:

Code:
   $c="SELECT * FROM buecher WHERE Titel LIKE ('%c%')";


 while($zeile=mysql_fetch_row($ergebnis)){
 print("<tr>");
 if ($zeile[5] == $c){
 print("<td>");
 print("<a href='read.php?buch_id=");
 print($zeile[0]);
 print("'>");
 print("<font face='Verdana' size='2'>$zeile[5]</font>");  
 //..
 }}
Das Buch, das mit "C.." anfängt wird nicht gefunden
 
Alt 22.10.2004, 21:44  
Gast
 
Beiträge: n/a
Standard

Jepp - Das hier:

1. $c= "SELECT * FROM buecher WHERE Titel LIKE ('%c%')";
+
2. if ($zeile[5] == $c)
=
3. if ($zeile[5] == "SELECT * FROM buecher WHERE Titel LIKE ('%c%')")
 
Alt 22.10.2004, 21:50  
Gast
 
Beiträge: n/a
Standard

sorry, das funktioniert leider auch nicht. das buch wird nicht gefunden.
kann es sein das ('%c%') nicht stimmt?

an der groß u klein schreibung kanns jedenfalls nicht liegen..
 
Alt 22.10.2004, 21:54  
Gast
 
Beiträge: n/a
Standard

Mein Posting war ein Denkanstoss, was falsch ist - nicht wies richtig geht.

Du vergleichst mit dem Querystring und nicht mit dem Feldinhalt - das dürfte also immer negativ ausfallen.
  • $c="SELECT * FROM buecher WHERE Titel LIKE ('%c%')";
    while($zeile=mysql_fetch_row($ergebnis)){

Wo definierst Du den Inhalt von $ergebnis? nirgends
Wo fragst Du die Datenbank überhaupt ab? nirgends

Das kann nicht gehen.

schau mal hier, wie man eine DB abfrägt: http://www.php.net/mysql_query
 
Alt 22.10.2004, 22:03  
Gast
 
Beiträge: n/a
Standard

bin php n00b, habe leider noch nicht so ganz den durchblick...

$ergebnis wird folgendermaßen definiert:

$anfrage="SELECT * FROM buecher ORDER BY Titel ASC ";
$ergebnis=mysql_query($anfrage) or die("Fehler bei der DB Anfrage");
$anz=mysql_num_rows($ergebnis);


inwiefern ist der querystring anders als der feldinhalt?
 
Alt 22.10.2004, 22:33  
Gast
 
Beiträge: n/a
Standard

Zu Deiner Schlussfrage:
- feldinhalt = Inhalt im Feld, also Buchtitel
- query = "SELECT * FROM buecher...."

Du vergleichst den STRING "SELECT..." mit dem Buchtitel - und Du hast sicher kein Buch namens "SELECT... " in Deiner DB

Zu Deinem Code. Den If-Vergleich kannst Du knicken - das machst Du mit SELECT.
Der Grund? Ganz einfach. Wenn Du nur die benötigten Selektierst, schonst Du Speicher und Usernerven und bekommst dafür Zeit und Performance

Probiers mal so

Code:
$anfrage="SELECT * FROM buecher WHERE Titel LIKE ('%a%') ORDER BY Titel ASC "; 
// Wähle aus Tabelle bücher alle Titel, die ein a irgendwo im Namen haben.
// Und zwar egal ob am Anfang, in der Mitte oder am Ende und sortiere sie
// nach Titel aufsteigend.
// (a% - die mit a beginnen und nur die)<- andere Möglichkeit
// (%a - die mit a aufhören und nur die)<- noch ne andere Möglichkeit

$ergebnis=mysql_query($anfrage) or die("Fehler bei der DB Anfrage".mysql_error()); 
// Beachte den Zusatz mysql_error() - es ist immer gut, wenn man nicht nur
// einen Fehler angesagt bekommt, sondern auch noch, was für einer es ist ;)

$anz=mysql_num_rows($ergebnis); 

echo "Gefundene Buchtitel:<table>\n";
// Beispieltitel und Tabelle beginnen

while($zeile=mysql_fetch_row($ergebnis))
{ 
  echo "<tr><td>"; 
  echo "<a href=\"read.php?buch_id=".$zeile[0].
          "\"><font face=\"Verdana\" size=\"2\">".$zeile[5]."</font>";
 echo "</td></tr>";
 }

echo "</table>"; // Tabelle auch wieder beenden
 
Alt 22.10.2004, 23:01  
Gast
 
Beiträge: n/a
Standard

Ok vielen Dank für deine Hilfe! Ist ja ganz klar das "SELECT * .." in der query steht, hätte ich eigentlich auch drauf kommen müssen.
Hätte die query ja bloß ausgegeben müssen

Der Quellcode wird jetzt allerdings ziemlich umfangreich, da ich das für jeden Buchstaben machen muss.
Mit der Anker Funktion möchte ich dann nämlich zu dem Buch / Büchern mit dem entsprechenden Anfangsbuchstaben springen können und das funktioniert nunmal nur so indem ich die Bücher mit den gleichen Anfangsbuchstaben die die selbe Tabelle/Spalte schreibe.
 
 


Themen-Optionen
Thema bewerten
Thema bewerten:

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

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are an
Gehe zu

Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Ordner auslesen und während des auslesen sortieren Dooki PHP Tipps 2008 6 14.05.2008 17:50
Domainnamen aus $HTTP_REFERER auslesen und weiterverarbeiten vampsoftchef PHP Tipps 2007 11 28.02.2007 09:58
[Erledigt] Datenbank auslesen mit register_globals off PHP Tipps 2007 14 03.01.2007 17:12
Übergabe von eingegebenem String mittels Formular und POST?! vampsoftchef PHP Tipps 2006 7 18.10.2006 20:06
[Erledigt] gelöst: Tabelle auslesen -&amp;amp;amp;amp;gt; Gleiche Einträge nur 1 Mal Datenbanken 3 31.03.2006 01:44
Auslesen von Variabeln mittels Formular Dadelu PHP Tipps 2006 9 30.03.2006 10:48
Cookies auslesen HSFighter PHP Tipps 2007 2 19.11.2005 14:56
[Erledigt] bestimmte ID's auslesen als array PHP Tipps 2007 2 31.10.2005 20:23
Daten eintragen und auslesen Rettungsdackel Datenbanken 0 14.09.2005 16:29
Daten aus Pw-Geschütztem bereich auslesen PHP-Fortgeschrittene 2 26.08.2005 15:27
[Erledigt] nächste Zeile einer Db auslesen? PHP Tipps 2005-2 7 01.08.2005 00:11
[Erledigt] Verzeichnis auslesen / redundante Daten PHP Tipps 2005 6 25.05.2005 13:28
auslesen und nochmals auslesen?! $$$ ThiKool $$$ PHP Tipps 2005 23 10.03.2005 19:43
Daten aus *.MPQ-Dateien mittels fread auslesen? PHP-Fortgeschrittene 21 06.01.2005 14:40
[Erledigt] Daten von anderer Homepage auslesen PHP Tipps 2004-2 5 02.12.2004 18:49

Besucher kamen über folgende Suchanfragen bei Google auf diese Seite
if bedingung eintrag nur buchstaben, php if datenbankeintrag, if bedingung mit buchstaben, eine zeile aus datenbank auslesen, php zelle auslesen unter einer bedingung, php zelle auslesen unter einer bedingung#, werte aus datenbank auslesen mit if bedingung, if ($zeilen <= \'5\') { print (\, php ganze zeilen if bedingungen, if bedingung in der datenbank, bedingung auslesen, if datenbankeintrag, php datenbankeintrag auslesen, c# datenbankeintrag in einer liste ausgeben, datenbankeinträge like anfangsbuchstaben, vergleich mit datenbankeintrag if, datenbank if bedingungen, ersten buchstaben aus datenbankeintrag

Alle Zeitangaben in WEZ +2. Es ist jetzt 02:24 Uhr.




Powered by vBulletin® Version 3.7.2 (Deutsch)
Copyright ©2000 - 2012, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.2.0
Aprilia-Forum, Aquaristik-Forum, Liebeskummer-Forum, Zierfisch-Forum, Geizkragen-Forum

Creative Commons License
Dieser Inhalt ist unter einer Creative Commons-Lizenz lizenziert.