Hi hab mehrere Adressen die ich auf mehrere Seiten verteilt habe- also auf jeder Seite 20 und dann ergeben sich da bis jetzt 3 Seiten raus - glaube ich hab jetzt nicht nochmals geguckt. Ich möchte die Ergebnisse jedoch durch Formular -pulldowns einschränken - wie geht dass - wenn es möglich ist würde ich auch gern eine schlagwort suche in das abfrageformular mit einbinden. so dass mann z.b. einen namen - meinetwegen hans eingibt und dann alle hans aus der datenbank angezeigt bekommt - brauche echt hilf danke schonmal im vorraus - hier mein bisheriger code:
[PHP]<?php
// Datenbankverbindung
//---------------------------------------------------
$host = „localhost“; // Adresse des Datenbankservers, meist localhost
$user = „root“; // Ihr MySQL Benutzername
$pass = „“; // Ihr MySQL Passwort
$dbase = „villa“; // Name der Datenbank
$connection = mysql_connect(„$host“ , „$user“ , „$pass“)
OR die („Keine Verbindung zu der Datenbank moeglich.“);
$db = mysql_select_db($dbase , $connection)
OR die („Auswahl der Datenbank nicht moeglich.“);
//---------------------------------------------------
$pfad = $_SERVER[‚PHP_SELF‘]; // aktuellen Dateipfad ermitteln, wichtig fuer die Links der Seitennavigation
$query = mysql_query(„SELECT id FROM firmen“); // DB Abfragee
// ------------------------------------------------------------------------
$datensaetze_pro_seite = „10“; // Anzahl der Datensaetze die Pro Seite angezeigt werden sollen
$p = „3“; // Anzahl der Links die in der Seitenavigation ausgegeben werden
$total = mysql_num_rows($query); // liefert die Anzahl der Datensaetze der Abfrage
$seiten = ceil($total / $datensaetze_pro_seite); // Berechnet die Seitenanzahl insgesamt
// ------------------------------------------------------------------------
if(empty($_GET[‚go‘])){ // korrigieren der aktuellen Seite
$go = 1; // Sofern $go nicht uebergeben wurde
}elseif($_GET[‚go‘] <= 0 || $_GET[‚go‘] > $seiten){
$go = 1; // Variable definieren
}else{ // Wenn Obiges nicht zutraf
$go = mysql_real_escape_string($_GET['go']); // Variable definieren
}
$links = array(); // Linkkette bilden
// Seite die vor der aktuellen Seite kommt definieren
if(($go - $p) < 1){ $davor = $go - 1; }else { $davor = $p; }
// Seite die nach der aktuellen Seite kommt definieren
if(($go + $p) > $seiten){ $danach = $seiten - $go; }else{ $danach = $p; }
$off = ($go - $davor); // Variable definieren
if ($go- $davor > 1){ // Link definieren => Zur Erste Seite springen
$first = 1;
$links = „<a href="$pfad?go=$first" title="Zur ersten Seite springen">« Erste …\n“;
}
if($go != 1){ // Link definieren => eine Seite zurueck blaettern
$prev = $go-1;
$links = „<a href="$pfad?go=$prev" title="Eine Seite zurueck blaettern"> «\n“;
}
for($i = $off; $i <= ($go + $danach); $i++){ // einzelne Seitenlinks erzeugen
if ($i != $go){ // Link definieren
$links[] = "<a href=\"$pfad?go=$i\">$i</a>\n";
}elseif($i == $seiten) { // aktuelle Seite, ein Link ist nicht erforderlich
$links[] = "<span class=\"current\">[ $i ]</span>\n";
}elseif($i == $go){ // aktuelle Seite, ein Link ist nicht erforderlich
$links[] = "<span class=\"current\">[ $i ]</span>\n";
} // close if $i
}
if($go != $seiten){ // Link definieren => eine Seite weiter blaettern
$next = $go+1;
$links = „<a href="$pfad?go=$next" title="Eine Seite weiter blaettern"> » \n“;
}
if($seiten - $go - $p > 0 ){ // Link definieren => Zur letzen Seite springen
$last = $seiten;
$links = „<a href="$pfad?go=$last" title="Zur letzten Seite springen">… Letzte »\n“;
}
$start = ($go-1) * $datensaetze_pro_seite; // Berechne den Startwert fuer die DB
$link_string = implode(" ", $links); // Zusammenfuegen der einzelnen Links zu einem String
if (isset($_POST[‚art‘]) != ‚alle_kategorien‘ && isset($_POST[‚ort‘]) != ‚alle_orte‘){
$abfrage = mysql_query("SELECT * FROM firmen LIMIT $start,$datensaetze_pro_seite ");
}
elseif ($_POST[‚art‘] != ‚alle_kategorien‘ && $_POST[‚ort‘] == ‚alle_orte‘){
$abfrage = mysql_query("SELECT * FROM firmen WHERE art LIKE $art LIMIT $start,$datensaetze_pro_seite ");
}
elseif ($_POST[‚art‘] == ‚alle_kategorien‘ && $_POST[‚ort‘] != ‚alle_orte‘){
$abfrage = mysql_query("SELECT * FROM firmen WHERE ort LIKE $ort LIMIT $start,$datensaetze_pro_seite ");
}
else{
$abfrage = mysql_query("SELECT * FROM firmen WHERE ort LIKE $ort AND art LIKE $art LIMIT $start,$datensaetze_pro_seite ");
}
// Daten ausgeben
while($row = mysql_fetch_object($abfrage)){
?>
<div class="entry"> <div class="entry_inhalt">
<p><?php echo sanitize($row->firmenname); ?> </p>
<p><?php echo sanitize($row->plz) . ' - ' . sanitize($row->ort); ?></p>
<p><?php echo sanitize($row->strasse) . ' ' . sanitize($row->hausnummer); ?></p>
<p><?php echo sanitize($row->telefon); ?></p>
</div>
<div class="entry_mehr">
<?php if ($row->id != $_GET['more']): ?>
<p><a href="?more=<?php echo sanitize($row->id); ?>&go=<?php echo $_GET['go']; ?>">Mehr...</a></p>
<?php endif; ?>
</div>
</div>
<?php if ($row->id == $_GET['more']): ?>
<div class="entry info">
<p><?php echo sanitize($row->i); ?></p>
</div>
<?php endif;
} // close while
echo ‚
echo „<div id="navigation">\n“;
echo „<span class="pages">Seite $go von $seiten\n“;
echo $link_string;
echo „
echo „“;
?>[/PHP]
wie ihr seht hab ich schon variablen wie ort und art in den select teil Für die Datenbank einggefügt und hab versucht so eine lösung zu bekommen hat aber leider nicht ganz funktioniert
hoffe ihr könnt mir helfen!
gruß Sacul