Archiv der Kategorie: PHP

Alles über die Programmier Sprache PHP.

MySQL Verbindung und einfache Datenbank Abfragen

Ich möchte euch hier zeigen wie man eine Verbindung zu einer MySQL Datenbank herstellt, dann eine einfache Datenbank Abfrage macht und die Daten auf einer Webseite anzeigt.
Als erstes machen wir den Verbindungsaufbau zur Datenbank:
<?php
$mysql = mysql_connect($DatenbankAdresse, $DatenbankName, $DatenbankPasswort) or die (mysql_error());
mysql_select_db($TabellenName, $mysql ) or die (mysql_error());
?>

Die vier Variablen ($DatenbankAdresse, $DatenbankName, $DatenbankPasswort und $TabellenName) muss man vorher korrekt festlegen. In vielen Fällen reicht als $DatenbankAdresse der berühmte „Localhost“. Die anderen Angaben muss jeder in seinem Fall selbst festlegen.
<?php
$DatenbankAdresse = "Localhost";
?>

Nun haben wir eine Verbindung zur Datenbank hergestellt, jetzt wollen wir die Tabelle „User“ Abfragen welche eine ID (id), einen Vornamen (firstname), einen Nachnamen (lastname), einen Nickname (nickname) und eine Email Adresse (email) enthält. Wir möchten gern den kompletten Tabelleninhalt ausgeben:
<?php
$sql = "SELECT * FROM User";
$result = mysql_query($sql) or die(mysql_error());
while ($row = mysql_fetch_array($result)) {
    echo "$row->id, $row->firstname, $row->lastname, $row->nickname, $row->email<br />";
}
?>

Wenn man nur einen gewissen User ausgeben möchte, z.B. den mit dem Vornamen „Andre“, dann sieht da so aus:
<?php
$sql = "SELECT * FROM User WHERE firstname = 'Andre' LIMIT 1";
$result = mysql_query($sql) or die(mysql_error());
$row = mysql_fetch_array($result)
echo "$row->id, $row->firstname, $row->lastname, $row->nickname, $row->email";
?>

Wenn wir alle ausser diesen einen User haben wollen geht das so:
<?php
$sql = "SELECT * FROM User WHERE firstname != 'Andre'";
$result = mysql_query($sql) or die(mysql_error());
while ($row = mysql_fetch_array($result)) {
    echo "$row->id, $row->firstname, $row->lastname, $row->nickname, $row->email<br />";
}
?>

Man kann die Ausgaben auch Sortieren, dazu zeige ich euch nun die entsprechenden Abfragen. Wir sortieren unsere Datensätze nach Nachnamen:
<?php
// Aufsteigend sortieren
$sql = "SELECT * FROM User ORDER BY lastname ASC";
?>

Und das Gegenteil:
<?php
// Absteigend sortieren
$sql = "SELECT * FROM User ORDER BY lastname DESC";
?>

Ich denke das reicht für den Einstieg erstmal, jetzt bleibt nur noch eines. Wir beenden die MySQL Verbindung wieder, das geht in unserem Fall so:
<?php
mysql_close($mysql);
?>

Nun sind wir fertig, ich hoffe Ihr konntet alles verstehen. Falls nicht hinterlasst einfach einen Kommentar zum Thema unten, ich versuche dann das so schnell wie möglich zu beantworten.
Viel Spass und Erfolg beim Testen.

PHP – Einen String kürzen und „…“ anhängen

Manchmal ist es sinnvoll einen String zu kürzen und zwei oder drei Punkte anzuhängen um die Kürzung anzuzeigen.
Dies machen wir mit der Funktion „TruncateString“ in die wir den String und die maximale Länge die er haben soll übergeben.
function TruncateString($string, $length) {
    // Wenn der String länger ist als die maximale Länge..
    if (strlen($string) > $length) {
 
        // dann kürzen wir ihn und hängen drei Punkte an.
        $string = substr($string, 0, $length)."...";
    }
    // Der gekürzte String wird von der Funktion zurückgegeben.
    return $string;
}

Das ganze ist doch eine sehr einfache Sache, viel Spass beim Testen.

PHP – Text Eingabefelder gegen Spam und Schad-Code absichern

Heute zeige ich Euch wie man Texteingabe Felder in Formularen gegen das einspeisen von PHP und HTML Code absichert. Das ganze geht durch folgende Funktion in welche man den zu sichernden String übergibt.
function FormatPost($sMessage) {
    // Die "strip_tags" Funktion entfernt alle PHP und HTML Tags aus einem String
    $sMessage = strip_tags($sMessage);
 
    // Die "nl2br Funktion ersetzt Zeilenumbrüche ("/n") durch das HTML Tag "<br />"
    $sMessage = nl2br(strip_tags($sMessage));
 
    // Der Rückgabe Wert der Funktion ist der gesicherte String
    return $sMessage;
}

Das ganze ist angesichts der heutzutage aktiven Spambots eigentlich unerlässlich. Aber auch „menschliche“ Spammer werden so davon abgehalten heimlich Schad-Code in Eure Webseite einzuschleusen.

PHP – Random String generieren

Einen Zufalls String aus einer vorgegebenen Bandbreite aus Zeichen generieren.
Vorab einmal die komplette Funktion.
function randomString($iLength) {
    // Ein String welcher die möglichen Zeichen (Bandbreite) enthält.
    $sSignRange = "ABCDEFGHJKLMNPRSTUVWXYZ0123456789";
 
    // Zur Sicherheit den Rückgabe String dieser Funktion leeren.
    $sRandomString = "";
 
    // Eine Schleife durchlaufen, Anzahl Durchläufe = max. Zeichen Anzahl.
    while(strlen($sRandomString) <= $iLength) {
 
        // Pro Durchlauf ein Zufalls Zeichen anheften bis wir den vollständigen Zufalls String haben.
        $sRandomString = $sRandomString.substr($sSignRange, rand(1, strlen($sSignRange) - 1), 1);
    }
 
    // Rückgabewert (den Zufalls String zurückgeben).
    return($sRandomString);
}

In die Funktion wird die Länge des gewünschten Zufalls Strings übergeben, sonst nichts. Der Funktionsaufruf schaut dann folgendermaßen aus:
$ZufallsString = randomString(5);
Vielleicht hilft euch das einmal weiter. Anwendung findet diese Funktion zum Beispiel bei Captcha Scripts oder Passwort Generatoren. Man kann die Zeichen Bandbreite natürlich beliebig vergrössern und sie wenn man möchte auch aus einer externen Datei einlesen. Für den „Heimanwender“ ist dies allerdings nicht notwendig.