WinFuture-Forum.de: Datenbanksätze Mit $_post Nach Übereinstimmungen überprüfen - WinFuture-Forum.de

Zum Inhalt wechseln

Nachrichten zum Thema: Entwicklung
  • 3 Seiten +
  • 1
  • 2
  • 3

Datenbanksätze Mit $_post Nach Übereinstimmungen überprüfen

#31 Mitglied ist offline   lloiser 

  • Gruppe: aktive Mitglieder
  • Beiträge: 91
  • Beigetreten: 13. August 08
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 19. August 2008 - 13:15

ich bin mir nicht sicher ob es funktioniert:

if($query)
{
  while($row=mysql_fetch_array($query))
  {
  echo "
	<tr>
	  <td style='border-right:1px solid black;'>".htmlentities($row[de])."</td>
	  <td>".htmlentities($row[en])."</td>
	</tr>
  ";
  }
}
else
  echo "Es wurde nichts gefunden!";

Denken ist Arbeit
Arbeit ist Energie
und Energie soll man sparen
0

Anzeige



#32 Mitglied ist offline   Diewie 

  • Gruppe: aktive Mitglieder
  • Beiträge: 409
  • Beigetreten: 18. Juni 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Geisenhausen / München

geschrieben 19. August 2008 - 14:37

Mach die Abfrage als erstes und prüfe mit mysql_num_rows() die Anzahl der Datensätze. Wenn diese größer Null ist, dann gibst du die Tabelle und mit der While-Schleife die Ergebnisse aus. Ansonsten gibst du einfach die Meldung aus, dass nichts gefunden wurde.

Gruß,
Stefan
0

#33 Mitglied ist offline   ps915 

  • Gruppe: aktive Mitglieder
  • Beiträge: 1.117
  • Beigetreten: 17. Mai 07
  • Reputation: 0
  • Geschlecht:Männlich

geschrieben 19. August 2008 - 14:53

Ich Dank euch, mit mysql_num_rows hat es bestens funktioniert:
	$query=mysql_query($sql);
	$rows=mysql_num_rows($query);

	if($rows >= 1){
		
		echo "
		<br />Ihre Suche nach <b>".htmlentities($_POST['suche'])."</b> ergab:<br /><br />
		<table style='border:1px solid black; padding-left:5px; padding-right:5px; padding-bottom:2px; padding-top:2px; 
		border-collapse:collapse;'>
		  <tr style='border:1px solid black;'>
			<td style='border:1px solid black;'><b>Deutsch</b></td>
			<td><b>Englisch</b></td>
		  </tr>";
	}
		
	while($row=mysql_fetch_array($query))
			{
			echo "
			  <tr>
				<td style='border-right:1px solid black;'>".htmlentities($row[de])."</td>
				<td>".htmlentities($row[en])."</td>
			  </tr>
			";
		}
	if($rows >= 1){
			echo "</table>";
		}
	if($rows == 0){
			echo "Es wurde nichts gefunden!";
	}

Kann man das so lassen oder noch vereinfachen?

Gruß,
Toasterfraktion

Dieser Beitrag wurde von Toasterfraktion bearbeitet: 19. August 2008 - 14:55

0

#34 Mitglied ist offline   Diewie 

  • Gruppe: aktive Mitglieder
  • Beiträge: 409
  • Beigetreten: 18. Juni 06
  • Reputation: 0
  • Geschlecht:Männlich
  • Wohnort:Geisenhausen / München

geschrieben 19. August 2008 - 19:24

Ja, man kann das alles mit einer If-else-Abfrage erledigen, da die While-Schleife auch nur im Erfolgsfall benötigt wird:
$query = mysql_query($sql);
$rows = mysql_num_rows($query);

if ($rows > 0) {
        
	echo '<br />Ihre Suche nach <b>'.htmlentities($_POST['suche']).'</b> ergab:<br /><br />
		<table style="border:1px solid black; padding-left:5px; padding-right:5px; padding-bottom:2px; padding-top:2px; border-collapse:collapse;">
			<tr style="border:1px solid black;">
			   <td style="border:1px solid black;"><b>Deutsch</b></td>
			   <td><b>Englisch</b></td>
			</tr>';
        
    while ($row = mysql_fetch_array($query)) {
		echo '			<tr>
			   <td style="border-right:1px solid black;">'.htmlentities($row[de]).'</td>
			   <td>'.htmlentities($row[en]).'</td>
			</tr>';
	}
	echo '</table>';
	
} else {
	echo 'Es wurde nichts gefunden!';
}

Gruß,
Stefan

Dieser Beitrag wurde von Diewie bearbeitet: 19. August 2008 - 19:24

0

Thema verteilen:


  • 3 Seiten +
  • 1
  • 2
  • 3

1 Besucher lesen dieses Thema
Mitglieder: 0, Gäste: 1, unsichtbare Mitglieder: 0