Fremde Scripte
- Rizzo
- Inaktiv
- Beiträge: 86
- Registriert: 3. Januar 2009, 19:27
- EasyHP Website: http://www.GeizPirat.de
- Kontaktdaten:
Re: Fremde Scripte
Es soll so laufen das sich registrierte User Codes kaufen können (Paypal etc.) dann weitergeleitet werden
auf die Seite wo die Codes generiert werden.
Nun kann man mit dem Code ein Gebot abgeben.Mache ich das kommt die Meldung
Ihr Gebot von x,xx Euro wurde nicht eingetragen.
Falscher PIN
Warum Falsch, die Codes wurden doch generiert und eingetragen (allerdings nicht beim User,sondern in einer extra Tabelle)
auf die Seite wo die Codes generiert werden.
Nun kann man mit dem Code ein Gebot abgeben.Mache ich das kommt die Meldung
Ihr Gebot von x,xx Euro wurde nicht eingetragen.
Falscher PIN
Warum Falsch, die Codes wurden doch generiert und eingetragen (allerdings nicht beim User,sondern in einer extra Tabelle)
Re: Fremde Scripte
Komisch, nein, nicht komisch. Ich hab mir den Code noch einmal angesehen - der Code ist unlogisch, aber theoretisch richtig. Ersetze bitte das alles ...
... mit dem hier ...
... jetzt sollte es funktionieren - Schande über mich, das ich da nicht gleich draufgekommen bin.
LG, Tim
Code: Alles auswählen
<?php
$code = $_POST["code"];
$user = $_POST["user"];
$gebot = $_POST["gebot"];
if( $code == "" OR $user == "" OR $gebot == "")
{
echo "Eingabefehler. Bitte alle Felder korrekt ausfüllen. <a href=\"artikel1.php\">Zurück</a>";
exit;
}
$result = mysql_query("SELECT id FROM a1 WHERE code LIKE '$code'");
$menge = mysql_num_rows($result);
if($menge == 0)
{
$eintrag = "INSERT INTO a1 (code, user, gebot) VALUES ('$code', '$user', '$gebot')";
$eintragen = mysql_query($eintrag);
if($eintragen == true)
{
echo "Ihr Gebot von <b>$gebot</b> Euro wurde nicht eingetragen. <br><br>Falscher PIN <a href=\"artikel1.php\"><br><br>zur Übersicht</a>";
}
else
{
echo "Fehler beim Speichern des Gebotes. <a href=\"artikel1.php\">Zurück</a>";
}
}
else
{
echo "Ihr eingegebener Pin ist schon verwendet. <a href=\"artikel1.php\">Haben Sie sich vertippt?</a>";
}
?>
Code: Alles auswählen
<?php
$code = $_POST["code"];
$user = $_POST["user"];
$gebot = $_POST["gebot"];
if( $code == "" OR $user == "" OR $gebot == "")
{
echo "Eingabefehler. Bitte alle Felder korrekt ausfüllen. <a href=\"artikel1.php\">Zurück</a>";
exit;
}
$result = mysql_query("SELECT id FROM a1 WHERE code LIKE '$code'");
$menge = mysql_num_rows($result);
if($menge == 0)
{
$eintrag = "INSERT INTO a1 (code, user, gebot) VALUES ('$code', '$user', '$gebot')";
$eintragen = mysql_query($eintrag);
if($eintragen == false)
{
echo "Fehler beim Speichern des Gebotes. <a href=\"artikel1.php\">Zurück</a>";
}
else
{
echo "Ihr Gebot wurde eingetragen.. <a href=\"artikel1.php\">Weiter</a>";
}
}
else
{
echo "Ihr eingegebener Pin ist schon verwendet. <a href=\"artikel1.php\">Haben Sie sich vertippt?</a>";
}
?>
LG, Tim
- Rizzo
- Inaktiv
- Beiträge: 86
- Registriert: 3. Januar 2009, 19:27
- EasyHP Website: http://www.GeizPirat.de
- Kontaktdaten:
Re: Fremde Scripte
...fast.....der Code wird angenommen....
...allerdings wenn ich mir einen ausdenke wird der auch angenommen....
Da ist also noch eine Kleinigkeit faul.....
...allerdings wenn ich mir einen ausdenke wird der auch angenommen....


Da ist also noch eine Kleinigkeit faul.....
Re: Fremde Scripte
Wie meinst du das?
- daniel
- Ehemaliger
- Beiträge: 413
- Registriert: 13. März 2008, 16:49
- Wie bist du auf EasyHP gekommen?: Werbung auf phpBB.de
- Wohnort: Bremen
- Kontaktdaten:
Re: Fremde Scripte
bei dem code kann ich nicht verstehen, warum eine Fehlermeldungangezeigt werden soll, wenn der Befehl INSERT.... = true zurückgibt.
achso das hat Tim ja schon berichtigt.
mein Lösungsvorschlag:
war LIKE im SQL-Befehl nicht dafür, wenn die der entsprechende Wert in der Tabellenzelle irgendwo vorhanden ist??? villeicht liegt es ja daran, dass du dir immer einen Code ausgedacht hast, der im Code enthalten ist. also zB: du hast 357 eingegeben und der code heißt 12348357157.
ich würd da lieber das hier nehmen:
achso das hat Tim ja schon berichtigt.
mein Lösungsvorschlag:
war LIKE im SQL-Befehl nicht dafür, wenn die der entsprechende Wert in der Tabellenzelle irgendwo vorhanden ist??? villeicht liegt es ja daran, dass du dir immer einen Code ausgedacht hast, der im Code enthalten ist. also zB: du hast 357 eingegeben und der code heißt 12348357157.
ich würd da lieber das hier nehmen:
Code: Alles auswählen
SELECT id FROM a1 WHERE code = '$code'
http://www.daniel-schlueter.eu
Meine Homepage
Meine Homepage
- Rizzo
- Inaktiv
- Beiträge: 86
- Registriert: 3. Januar 2009, 19:27
- EasyHP Website: http://www.GeizPirat.de
- Kontaktdaten:
Re: Fremde Scripte
Ich meine wenn z.B. ein generierter Code "bnghtzu" lautet wird er angenommen,
wenn ich mir einen ausdenke der nicht generiert worden ist wird er auch angenommen,
was ja nicht Sinn der Sache sein kann......
@Daniel
nein,leider auch nicht.
Muß da nicht noch irgendwie sowas rein das vorher abgefragt wird aus der DB ob der Code
vorhanden und noch nicht verbraucht ist
wenn ich mir einen ausdenke der nicht generiert worden ist wird er auch angenommen,
was ja nicht Sinn der Sache sein kann......
@Daniel

Muß da nicht noch irgendwie sowas rein das vorher abgefragt wird aus der DB ob der Code
vorhanden und noch nicht verbraucht ist

- daniel
- Ehemaliger
- Beiträge: 413
- Registriert: 13. März 2008, 16:49
- Wie bist du auf EasyHP gekommen?: Werbung auf phpBB.de
- Wohnort: Bremen
- Kontaktdaten:
Re: Fremde Scripte
moment da ist immer noch was unlogisch.
soll nun beim finden eines Codes das eingetragen werden oder wenn der Code nicht gefunden wurde?
dieser Code überprüft ob es den Code noch nicht gibt und trägt dann die Daten ein. wenn es den schon gibt sollte die Meldung angezeigt werden:
Code: Alles auswählen
<?php
$code = $_POST["code"];
$user = $_POST["user"];
$gebot = $_POST["gebot"];
#wenn nichts eingegeben wurde wird dieser Fehler angezeigt > OK
if( $code == "" OR $user == "" OR $gebot == "")
{
echo "Eingabefehler. Bitte alle Felder korrekt ausfüllen. <a href=\"artikel1.php\">Zurück</a>";
exit;
}
$result = mysql_query("SELECT id FROM a1 WHERE code LIKE '$code'");
$menge = mysql_num_rows($result);
#wenn keine übereinstimmung gefunden wurde, wird der Datensatz eingetragen > ???
if($menge == 0)
{
$eintrag = "INSERT INTO a1 (code, user, gebot) VALUES ('$code', '$user', '$gebot')";
$eintragen = mysql_query($eintrag);
if($eintragen == false)
{
echo "Fehler beim Speichern des Gebotes. <a href=\"artikel1.php\">Zurück</a>";
}
else
{
echo "Ihr Gebot wurde eingetragen.. <a href=\"artikel1.php\">Weiter</a>";
}
}
#wenn es nicht 0 war, also mindestens eine übereinstuimmung gefunden wurde, wird angezeigt, dass der Pin schon verwendet wird?
else
{
echo "Ihr eingegebener Pin ist schon verwendet. <a href=\"artikel1.php\">Haben Sie sich vertippt?</a>";
}
?>
dieser Code überprüft ob es den Code noch nicht gibt und trägt dann die Daten ein. wenn es den schon gibt sollte die Meldung angezeigt werden:
Ihr eingegebener Pin ist schon verwendet. Haben Sie sich vertippt?
Zuletzt geändert von daniel am 6. Januar 2009, 21:48, insgesamt 1-mal geändert.
http://www.daniel-schlueter.eu
Meine Homepage
Meine Homepage
- Rizzo
- Inaktiv
- Beiträge: 86
- Registriert: 3. Januar 2009, 19:27
- EasyHP Website: http://www.GeizPirat.de
- Kontaktdaten:
Re: Fremde Scripte
Wenn der Code nicht gefunden wurde, muß ja eine Fehlermeldung kommen a' la
"Code ist ungültig" oder so ähnlich.Das passiert nicht, sondern wird trotzdem angenommen.
Ist ein Code schon genommen worden kommt auch entsprechend das richtige "Ergebnis",
das er schon verwendet worden ist.
Fehlt eine Angabe kommt auch das richtige "Ergebnis".
"Code ist ungültig" oder so ähnlich.Das passiert nicht, sondern wird trotzdem angenommen.
Ist ein Code schon genommen worden kommt auch entsprechend das richtige "Ergebnis",
das er schon verwendet worden ist.
Fehlt eine Angabe kommt auch das richtige "Ergebnis".
- daniel
- Ehemaliger
- Beiträge: 413
- Registriert: 13. März 2008, 16:49
- Wie bist du auf EasyHP gekommen?: Werbung auf phpBB.de
- Wohnort: Bremen
- Kontaktdaten:
Re: Fremde Scripte
eben das tut dieser Code ja. bzw. wie soll ddie Datenbankzeile denn aussehen, wenn der Code zwar Gültig aber noch nicht verwendet worden ist?Rizzo hat geschrieben:Muß da nicht noch irgendwie sowas rein das vorher abgefragt wird aus der DB ob der Code
vorhanden und noch nicht verbraucht ist
dafür würde ich eine zweite Tabelle erstellen, die alle gültigen Codes aulistet und wenn einer verwendet wird, wird er dort gelöscht und hier hinzugefügt mit den Daten.
oder es muss geprüft werden, wenn der Code stimmt, ob die Felder user und gebot leer sind. dann kann man für beide prüfungen die gleiche Datenbank benutzen.
dafür muss man aber natürlich wissen in welcher Tabelle die gültigen Codes "aubewahrt" werden oder die Datei, die die Gültigen Codes erstellt dann ebenfalls entsprechend abändern.
PS.: bevor der Eingabe des Users über POST vertraut wird sollte man noch prüfen, ob es diesen User überhaupt gibt, bzw, ob wirklich er dieses Formular abgesendet hat.
http://www.daniel-schlueter.eu
Meine Homepage
Meine Homepage
- Rizzo
- Inaktiv
- Beiträge: 86
- Registriert: 3. Januar 2009, 19:27
- EasyHP Website: http://www.GeizPirat.de
- Kontaktdaten:
Re: Fremde Scripte
Es gibt folgende Datenbank für die Codes:
und für die Artikel
und für die Artikel
Zuletzt geändert von Rizzo am 14. Januar 2009, 14:37, insgesamt 1-mal geändert.