CronJob-Service
bei SELFPHP mit ...
|
+ minütlichen Aufrufen
+ eigenem Crontab Eintrag
+ unbegrenzten CronJobs
+ Statistiken
+ Beispielaufrufen
+ Control-Bereich
Führen Sie mit den CronJobs von
SELFPHP zeitgesteuert Programme
auf Ihrem Server
aus. Weitere Infos
|
:: Anbieterverzeichnis ::
Globale Branchen
Informieren Sie sich über ausgewählte Unternehmen im Anbieterverzeichnis von SELFPHP
:: Newsletter ::
Abonnieren Sie hier den kostenlosen
SELFPHP Newsletter!
|
PHP Grundlagen Hier kann über grundlegende Probleme oder Anfängerschwierigkeiten diskutiert werden |
26.11.2006, 17:39:37
|
Anfänger
|
|
Registriert seit: Nov 2006
Beiträge: 3
|
|
if (empty...if (!eregi... Wörter und leere Einträge sperren
PHP-Code:
$keys = "";
$values = "";
$link = mysql_connect($host,$user,$pass);
mysql_select_db($db,$link);
foreach($array as $key => $value) {
$keys .= $key . ",";
$values .= "'" . mysql_real_escape_string($value) . "',";
}
$keys = "";
$values = "";
$link = mysql_connect($host,$user,$pass);
mysql_select_db($db,$link);
foreach ($array as $key => $value) {
$keys .= $key . ",";
$values .= "'" . mysql_real_escape_string($value) . "',";
}
$keys = substr($keys,0,-1);
$values = substr($values,0,-1);
if (!eregi("http://", $values) && !eregi("Hans Mustermann", $values) && !eregi("Hans@Mustermann.de", $values)) {
if (empty($values['comments'])) {
if (mysql_query("INSERT INTO ".$tab." (".$keys.") VALUES (".$values.")",$link)) {
echo "<center>Danke für den Eintrag, er wurde erfolgreich hinzugefügt! <a href=\"eintrag.php\" target=\"_self\">Zu den Einträgen</a></center><br>\n";
} else {
echo "<center>Leider hat es nicht geklappt auf die Datenbank zuzugreifen.</center>";
}
} else {
echo "<center>Der Beitrag darf nicht leer sein!</center>";
}
} else {
echo '<center>Der Beitrag darf kein "http://", "Hans Mustermann" enthalten.</center>';
}
Hmm, wie bekomme ich das jetzt richtig hin? Der Code Sperrt zwar auch die sachen die ich nciht rein haben will, aber sperrt auch alle richtig eingegebene Gästebucheinträge :( ... Wie muß ich den Code denn hinbiegen, das der funktioniert? Wo ist der Fehler?
|
26.11.2006, 20:38:54
|
|
SELFPHP Guru
|
|
Registriert seit: May 2003
Beiträge: 7.187
|
|
AW: if (empty...if (!eregi... Wörter und leere Einträge sperren
Vielleicht solltest du dafür erst einmal erklären, was dein Code überhaupt erreichens soll.
|
26.11.2006, 23:23:54
|
Anfänger
|
|
Registriert seit: Nov 2006
Beiträge: 3
|
|
AW: if (empty...if (!eregi... Wörter und leere Einträge sperren
Ja, es soll das Gästebuch füttern. (Die Datenbankdaten habe ich natürlich entfernt)
Gesperrt werden dann, mit if(!eregi) Hans Mustermann, http:// und mit if(empty) sollen leere Beiträge verhindert werden. Nur eben läuft das mit dem Script irgendwie nicht. Der Script erlaubt komischerweise garkeine Beiträge. Natürlich gibt er die richtigen Antworten aus, wenn ich Hans Mustermann angebe ( www.tilmanns-home.de und Gästebuch) aber ob ich leeren oder vollen Beitrag reinsetzen möchte, der schreibt immer "Der beitrag darf nicht leer sein!" ... Aber wenn was bei kommentar (comments) steht, soll er ja das zur Datenbank schicken... Naja... hoffe habe das damit jetzt hinreichend erklärt...
|
27.11.2006, 09:22:40
|
|
SELFPHP Guru
|
|
Registriert seit: May 2003
Beiträge: 7.187
|
|
AW: if (empty...if (!eregi... Wörter und leere Einträge sperren
Zitat:
Zitat von Tilmann
[PHP]if (empty($values['comments'])) {
|
An dieser Stelle liegt dein Problem. $values ist kein Array sondern eine Zeichenkette. Somit kann natürlich auch kein Element mit dem Schlüssel comments existieren.
Richtigerweise müsste es an dieser Stelle auch !empty() heißen, da sonst die Abfrage nur ausgeführt wird, wenn der geprüfte Ausdruck leer ist.
|
27.11.2006, 11:21:04
|
Anfänger
|
|
Registriert seit: Nov 2006
Beiträge: 3
|
|
AW: if (empty...if (!eregi... Wörter und leere Einträge sperren
Und der Array bedeutet, das es jetzt "Key" heißt?! Bzw das ich nur "Value" nehmen muß?! Ich bin mir da jetzt nicht so sicher :( ... sorry, aber habe auch nicht selbst das script gschrieben und der, der mir den script geschrieben hat, der hat mir das nicht sonderlich erklärt...
Editiert von Tilmann
Habe das mal selbst ausprobiert :) ... und es hat sogar geklappt *g* ... Also "Array" ist dann der array und "Values" bedeutet dann das es mehrere "Arrays" bzw das alle "Arrays" ausgewertet werden?! Mein jetziger Code sieht dann jetzt so aus:
PHP-Code:
$keys = ""; $values = "";
$link = mysql_connect($host,$user,$pass); mysql_select_db($db,$link);
foreach ($array as $key => $value) { $keys .= $key . ","; $values .= "'" . mysql_real_escape_string($value) . "',"; }
$keys = substr($keys,0,-1); $values = substr($values,0,-1);
if (!eregi("http://", $values) && !eregi("Hans Mustermann", $values) && !eregi("Hans@Mustermann.de", $values)) { if (!empty($array['comments']) && !empty($array['name'])) { if (mysql_query("INSERT INTO ".$tab." (".$keys.") VALUES (".$values.")",$link)) { echo "<center>Danke für den Eintrag, er wurde erfolgreich hinzugefügt! <a href=\"eintrag.php\" target=\"_self\">Zu den Einträgen</a></center><br>\n"; } else { echo "<center>Leider hat es nicht geklappt auf die Datenbank zuzugreifen.</center>"; } } else { echo "<center>Der Beitrag darf nicht leer sein!</center>"; } } else { echo '<center>Der Beitrag darf kein "http://", "Hans Mustermann" enthalten.</center>'; }
Geändert von Tilmann (27.11.2006 um 13:23:49 Uhr)
|
Aktive Benutzer in diesem Thema: 1 (Registrierte Benutzer: 0, Gäste: 1)
|
|
Forumregeln
|
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.
HTML-Code ist aus.
|
|
|
Ähnliche Themen
|
Thema |
Autor |
Forum |
Antworten |
Letzter Beitrag |
Wörter sperren im Gästebuch
|
N'Koto Zinde |
PHP für Fortgeschrittene und Experten |
4 |
08.08.2006 16:56:25 |
Alle Zeitangaben in WEZ +2. Es ist jetzt 07:40:19 Uhr.
|