Hab folgendes Formular:
Die Daten werden an die datenbank wie folgt übergeben:
Mein Problem:
Bei Sonderzeichen wie z.B.: " ' " wird ein Fehler verursacht
und der text kann der Datenbank nicht hinzugefügt werden.
Wie kann ich dies vermeiden?
Ich hätte noch ne Frage:
Wie kann ich eine Liste anzeigen lasse mit z.B. 10 oder 20
Namen der Leute die die meisten beiträge gemacht haben?
Wie würde die sql abfrage lauten?
Danke für eure Hilfe
PHP-Code:
<form action = "addlyric.php" method = "post">
<table> <tr><td>
Titel:</td> <td><input name="titel"></td> </tr>
<tr><td>Interpret:</td><td> <input name="interpret"></td></tr>
<tr><td> Songtext:</td><td><textarea name="song" cols="45" rows="10"></textarea> </td></tr>
<tr><td> hinzugefügt von:</td><td> <input name="autor"> z.B.: Andy<p> </td></tr></table>
<input type="submit" name="gesendet" value="Text Hinzufügen">
<input type="reset">
</form>
PHP-Code:
<?php
if ($gesendet)
{
if ($titel=="" or $interpret=="" or $song=="" )
{
echo "<center><font color=#FFFFFF size='+1'>Leider hast du das Formular nicht vollständig ausgefüllt.</font>";
echo "<center><font color=#FFFFFF size='+1'>Du musst mindesten den Titel, Interpreten und den Songtext eingeben und erst dann das Formular abschicken.</font>";
}
else
{
require "ezine_db.inc.php";
$ezine_db = ezine_connecte_db();
$counter=1;
$sql = "INSERT INTO lyric";
$sql .= "(titel, interpret,";
$sql .= " song, autor, counter) values ";
$sql .= "('$titel', '$interpret', '$song', '$autor', '$counter')";
mysql_query($sql, $ezine_db);
$num = mysql_affected_rows();
if ($num>0)
{
echo "<center><font color=#FFFFFF>Es wurde 1 Songtext hinzugefügt</font><p>";
echo "<center><font color=#FFFFFF>Vielen Dank!</font><p>";
}
else
{
echo "<center><font color=#FFFFFF>Es ist ein Fehler aufgetreten, </font>";
echo "<center><font color=#FFFFFF>es wurde kein Songtext hinzugefügt</font><p>";
}
mysql_close($ezine_db);
}
}
?>
Bei Sonderzeichen wie z.B.: " ' " wird ein Fehler verursacht
und der text kann der Datenbank nicht hinzugefügt werden.
Wie kann ich dies vermeiden?
Ich hätte noch ne Frage:
Wie kann ich eine Liste anzeigen lasse mit z.B. 10 oder 20
Namen der Leute die die meisten beiträge gemacht haben?
Wie würde die sql abfrage lauten?
Danke für eure Hilfe
Kommentar