Ausgabe nach Buchstaben

Dolphon

Erfahrenes Mitglied
Moin.

Ich brauchste ein paar Code Schnipsel, welche aus mehreren Tabellen
jeweils die Spalte "name" auslist, und dann nur den Inhalt auflistet, der mit einen bestimtme Buchstaben anfängt. z.B G

Hoffe einer weiß da Rat.


2. Problem.
Ich habe die Seite action.php. In deren mitte wird ie Datei index.php included. Auf diese index.php befindet sich ein Link z.B templates/3/ausgabe.php?id=133. Wenn ich diesen Link anklicke soll die Datei ausgabe.php mit den entsprechenen Daten der ID 133(Welche in DB stehen) in die mitte includet werden.

MFG

Dolphon
 
Zuletzt bearbeitet:
1:
PHP:
<?
$host = "Hostname";
$user = "Username";
$pw = "Passwort";
$dbconnect = mysql_connect ( "$host", "$user", "$pw" );
$db = "Datenbankname";
mysql_select_db ( $db );

$tabellennamen = array ("name1", "name2", ... );

for($x=0; $x<=/*Anzahl Tabellen-1*/; $x++) {
 $dbabfrage = "SELECT name FROM $tabellennamen[$x]";
 $dbausgabe = mysql_query( $abfrage, $dbconnect );
 while( $ergebniss = mysql_fetch_array($dbausgabe)) {
  if( strstr($ergebniss[name], "G")) { 
  // strstr() prüft ob G (großgeschrieben) im namen enthalten ist
   print $namen;
  }
 }
}
?>


Bin mir nicht sicher obs so klappt, ist nur ne vermutung von mir.
vielleicht hab ich ja glück :)
 
Der soll nur den ersten drei Buchstaben überprüfen.
Das Skript ist für ein Archiv. Ich rufe die SEite g.php auf, dann werden mir alle Inhalte aufgelistet die mit einem G/g am Anfang beginnen.

@ Caminus
Habe die Suchfunktion vorher schon benutzt, nur leider habe ich keine passenden Antworten gefunden.
 
Original geschrieben von Dolphon
verstehe diese Zeile nicht. weil nicht was du mie Anzahl Tabellen -1 mesitn. soll ich da einfach $x<=7-1; hinschreiben?

Was Necr0 meint ist das Array $tabellennamen (eine Zeile drüber). Das hat genauso viele Elemente wie Du Tabellen hast, aber der erste Index in einem Array ist 0, nicht 1. Deshalb Anzahl Tabellen - 1. Machs so, dann stimmts auch, wenn du eine Tabelle hinzufügst oder entfernst:
PHP:
for($x=0; $x<count($tabellennamen); $x++)

Warum nicht der Code von Caminus?
 
weil ich dort Probs mit der Ausgabe bekomme. Der soll ja nicht nur eine sondern 7 Tabellen durchsuchen.
 
Wie wär's dann mit
PHP:
$query = "Select name from Tabelle1, Tabelle2, Tabelle_etc, Tabelle7 where name like 'G%'";
?
 
hab ich eben auch erfahren.
Habe mal ein bisschen gebastelt!
PHP:
<? 
include "config.inc.php";
  if (isset($_GET["buchstabe"])) 
    $buchstabe = $_GET["buchstabe"]; 
  else 
    $buchstabe = "a"; 

  $sql = mysql_connect("db_host", "db_user", "db_pass"); 
   
  mysql_select_db("dbname", $sql); 

  $query  = "SELECT name FROM movieaction, moviethriller, moviedrama WHERE feld LIKE '"; 
  $query .= $buchstabe . "%' ORDER BY feld DESC"; 
   
  $res = mysql_query($query); 

  while ($row = mysql_fetch_array($result)) <<-- Fehlermeldung
  { 
     echo $row["name"] . "<br>\n"; 
  } 

  mysql_close($sql); 
?>

Hier ist die Fehlermeldung.
Warning: mysql_fetch_array(): supplied argument is not a valid MySQL result resource in ..

Hab keine Ahnung woran das liget.
 
Zurück