php.de

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

 
 
LinkBack Themen-Optionen Thema bewerten
Alt 23.02.2005, 22:44  
Benutzer
 
Registriert seit: 11.07.2003
Beiträge: 54
other_
other_ eine Nachricht über ICQ schicken
Standard SQL abfrage einschrenken

moin,

mein problem ist das ich eine db hab mit über 200 einträgen die ich jetzt gerne alfabetisch geordnen hätte im moment hab ich das so gemacht:

PHP-Code:
<?php
echo '<div align="center">
A
</div>'
;
$show1 mysql_query("SELECT * FROM ".$db." ORDER BY name ASC") or die (mysql_error());
if(
mysql_num_rows($show1)) {
      while(
$show=mysql_fetch_array($show1)) {


      
$show2 mysql_query("SELECT typ FROM db_typ WHERE id = '".$show[typ]."'") or die (mysql_error());
      if(
mysql_num_rows($show2)) {
      while(
$request=mysql_fetch_array($show2)) {
      
      if((
$show[name]{0} == A) or ($show[name]{0} == a))
      {
      echo 
'<div align=center><a href=index.php?seid='.$seid.'&mod=showuser&key='.$show[key].'&id='.$show[id].'>'.$show[name].' - '.$request[typ].'</a></div>';
      }
      }
   }
}
}
?>
kan man das nicht irgend wie schon in der sql abfrage einbauen?
In der form:

SELECT * FROM ".$db." ORDER BY name ASC "nur anfangsbuchstabe A"


thx
other_
other_ ist offline  
Sponsor Mitteilung
PHP Code Flüsterer

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

Alt 23.02.2005, 23:28  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

mittels WHERE und SUBSTRING kannst du sowas in der art bauen.

btw, bitte für array-indizes ' benutzen, nur $show[key] ist unsauber, weil php dann versucht zuerst eine konstante zu finden die so hei0t und dann erst den wert einsetzt. wenn du error_reporting(E_ALL) [sollte man beim entwwickeln immer aktiviert haben] aktivierst, wirst du sehen dass es Notices macht.

mfg
robo47
robo47 ist offline  
Alt 23.02.2005, 23:46  
Benutzer
 
Registriert seit: 11.07.2003
Beiträge: 54
other_
other_ eine Nachricht über ICQ schicken
Standard

Danke schön

Aber damit komme ich irgend wie nicht klar! Ich verstehe nicht ganz wie das geht mit dem SUBSTRING.

Ich kan auch keine deutsche tut dazu finden, hat nicht wer einen guten link wo das bescheieben wird?

Und das mit dem error_reporting(E_ALL) hab ich auch noch nie versanden, was macht das wen es an ist? Ich hab da noch kieine änderung fest gestellt ?!?

THX
other_
other_ ist offline  
Alt 23.02.2005, 23:49  
Gast
 
Beiträge: n/a
Standard

Schon mal an
Code:
 ... WHERE spalte LIKE 'A%' OR spalte LIKE 'a'
gedacht?
 
Alt 23.02.2005, 23:59  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

naja wenn es an ist, gibt es dir alle fehler aus, die auftauchen. z.b. wenn ich sage:


PHP-Code:
<?php
<?php
echo $array['test'];
?>
?>
wird ein fehler ausgegeben weil ja der index genausowenig wie die variable existieren, dann werden sogenannte notices ausgegeben.
genauso wenn man indizes eines arrays anspricht und diese nicht gesetzt sind.
alles ein hinweis auf saubere programmierung.

SUBSTRING:
http://dev.mysql.com/doc/mysql/de/string-functions.html

SELECT bla FROM table WHERE SUBSTRING(feldname,0,1) = 'A' etc

mfg
robo47
robo47 ist offline  
Alt 24.02.2005, 00:00  
Moderator
 
Benutzerbild von robo47
 
Registriert seit: 03.09.2004
Beiträge: 11.792
PHP-Kenntnisse:
Fortgeschritten
robo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz seinrobo47 kann auf vieles stolz sein
Standard

oh meikel war mal wieder früher.

mfg
robo47
robo47 ist offline  
Alt 24.02.2005, 00:38  
Benutzer
 
Registriert seit: 11.07.2003
Beiträge: 54
other_
other_ eine Nachricht über ICQ schicken
Standard

Danke schön

es geht

und dass mit dem error_reporting(E_ALL) werde ich jetzt auch noch ausprobiren

other :wink:
other_ ist offline  
 


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
Abfrage von einer Abfrage Datenbanken 5 27.01.2011 23:31
mysql abfrage in Schleife havok PHP Tipps 2006 6 09.05.2006 08:39
abfrage begrenzen Cyrus Datenbanken 4 26.10.2005 11:29
[Erledigt] mysql abfrage über 4 Tabelle - bis 3 geht, bei der 4. habert Datenbanken 2 08.09.2005 11:59
Abfrage in array? BartTheDevil89 Datenbanken 5 10.05.2005 14:21
[Erledigt] IF() abfrage in variable packen PHP Tipps 2005 14 01.04.2005 17:23
Abfrage von Char-Feldern Datenbanken 9 04.02.2005 14:06
[Erledigt] SQL Abfrage funzt nicht Datenbanken 2 04.02.2005 11:09
[Erledigt] Mysql Abfrage Problem! PHP-Fortgeschrittene 5 27.11.2004 10:22
Abfrage funktioniert zwar, aber nicht korrekt Datenbanken 2 16.08.2004 09:10
Abfrage aus DB noch mal ausgeben und Abfrage aus mehrern Tab PHP Tipps 2004 4 12.07.2004 15:00
komplizierte mySQL Abfrage Datenbanken 6 25.06.2004 15:34
[Erledigt] Fehlerhafte Abfrage ? Datenbanken 15 24.06.2004 17:10
[Erledigt] mysql Abfrage Datenbanken 5 18.06.2004 14:16
[Erledigt] Variable per GET übergeben und DB Abfrage nutzen PHP Tipps 2004 4 01.06.2004 15:17


Alle Zeitangaben in WEZ +2. Es ist jetzt 09:11 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.