PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : nur die Inhalte aus MySQL ausgeben, die mit Buchstabe "A" anfangen


fantik
27.12.2005, 15:51:56
Hi @ll

Ich bin seit einigen Tagen ein Anfänger und habe schon meine ersten zwei Fragen.
I
Ich habe eine Tabelle
Autor |Titel |Verlag
---------------------------------
AMustermann|Mustertitel|Musterverlag
BMustermann|blablabla |blablabla

und möchte eine Funktion bereitstellen, die ermöglicht, Autoren nach Buchstaben zu sortieren. Es sollte so sein, dass wenn ich z.B. die Buchstabe "A" wähle, dann werden nur die Autoren angezeigt, die am Anfang des Namens "A" haben.
(In diesem Fall AMustermann)

II
Ich möchte links automatisch generieren lassen z.B.:
echo "<a href=\"http://www.meineseite.de/$zeile->AUTOR.html\">$zeile->AUTOR</a>";

Da aber die Datei Max-Mustermann.html und nicht Max(leerzeichen)Mustermann.html heißt habe ich ein Problem.

Ist es möglich Leerzeichen durch "-" automatisch zu ersetzen?

Zu dem Problem №2
Ich habe es umgeschrieben und jetzt sieht es so aus:

function replace_leer($autor)
{
$autor = str_replace(" ","-",$autor);
return $autor;
}
......................

echo "<a href=\"http://www.meineseite.de/replace_leer();.html\">$zeile->AUTOR</a> </p>";
Es funktioniert aber trotzdem nicht.

Marilu
27.12.2005, 19:10:32
Du solltest vielleicht "etwas weiter unten" anfangen und erst mal ein paar Basics über PHP lernen (z. B. hier (http://tut.php-q.net/)), damit Du Gefühl für die Syntax bekommst; z. B. über das Einbinden von Funktionen.

fantik
28.12.2005, 10:55:26
Du solltest vielleicht "etwas weiter unten" anfangen und erst mal ein paar Basics über PHP lernen (z. B. hier (http://tut.php-q.net/)), damit Du Gefühl für die Syntax bekommst; z. B. über das Einbinden von Funktionen.

Vielen Dank für deine Meinung. Es ist leider so, dass ich eine Aufgabe habe, die ich nicht machen kann, weil ich oben genantes Ptoblem nicht lösen kann. Ich wäre sehr dankbar, wenn man mir hilft zumindest Leerzeichen durch "-" zu ersetzten...

<?php
//Die Parameter für die Datenbankverbindung festlegen
$servername = "localhost";
$benutzer = "root";
$passwort = "passwort";
$datenbank = "datenbank";

//Versuchen die DB-Verbindung herzustellen
if ($verbindung = mysql_connect ($servername, $benutzer, $passwort)) {
// echo "die Verbindung mit der Datenbank <b>$servername</b> wurde"
// ." aufgebaut.<P>";
} else {
// echo "Der Verbindungsversuch zur DB ist fehlgeschalgen! " .
// mysqlerror();
exit();
}

//Die Datenbank auswählen
if (!mysql_query("USE $datenbank;")) {
//echo "Die Datenbank <b>$datenbank</b> konnte nicht ausgewählt werden. <P>";
exit();
} else {

//echo "Die Datenbank <b>$datenbank</b> wurde ausgewählt. <P>";

//Die Tabelle tx_maske_main auslesen
$anfrage = "SELECT AUTOR, VERLAG, ISBN, TITEL FROM tx_maske_main;";

if (!($ergebnis = mysql_query($anfrage))) {
//echo "Die Anfrage ist fehlgeschlagen! " . mysql_error();
} else {
//echo "Die Anfrage an die Datenbank war erfolgreich.<P>";
}


//Den Kopf der Liste generieren
function replace_leer($autor)
{
$autor= str_replace(" ","-",$autor);
return $autor;
}
//Alle Zeilen aus der DB holen und in die Liste einfügen
while ($zeile = mysql_fetch_object($ergebnis))

{
echo "<ul><p align=\"left\"><li>";
echo "<a href=\"http://www.meineseite.de/replace_leer();.html\">$zeile->AUTOR</a> </p>";
echo "<ul><li><font size=\"1\"><a href=\"http://www.meineseite.de/isbn_$zeile->ISBN.html\">$zeile->TITEL</font></a>";
echo "</ul></li></li></ul>";

}
//Die Verbindung zur Datenbank schließen
mysql_close($verbindung);
}
?>

fantik
28.12.2005, 12:42:10
OK, das Problem habe ich gelöst. So sieht es aus:
$ersetzen = $zeile->AUTOR;
$ersetzen = ereg_replace(" ","-",$ersetzen);