Php KEY Script2 Fehler
lima-city → Forum → Programmiersprachen → PHP, MySQL & .htaccess
anzahl
code
ergebnis
fehler
folgendes statement
http
kleine fehler
login
meldung
nennen
paar
senden
set
sorge
statement
syntax
update
url
weiterer tip
zeile
-
Hallo, ich habe im alten Thread ja gefragt ob mir jemand einen Key Script coden kann weil ich ihn nicht hinbekommen habe und habe ihn jetzt neu gecodet aber es kommt immer eine Fehler Meldung und weiß nicht was das Problem ist. Link zum alten Thread: http://www.lima-city.de/thread/php-key-script
Fehler "Parse error: syntax error, unexpected '{' in E:\xampp\htdocs\mt2\key.php on line 19"
<?php include ("checkuser.php"); include ("templates/key.html"); if(isset($_POST['submit']) && $_POST['submit'] == 'Senden') { include ("config_account.php"); $name = $_SESSION['user_nickname']; $Key = $_POST['Key']; $sql = mysql_query("SELECT * FROM Key WHERE Key='$Key'"); if(mysql_num_rows($sql)==1) echo "ja"; if($sql->Activ == 0) { echo "Der eingegebene Key Wurde Schon Aktiviert."; } else($sql->Activ == 1) { $wert = $sql->'Wert'; $sql2 = "SELECT * FROM account WHERE login = '$name'"; $result = mysql_query ($sql2); if (mysql_num_rows ($result) > 0) { $data = mysql_fetch_array ($result); $coins = $data['coins']; $ergebnis = $wert + $coins; $sql2 = "UPDATE account Set coins = '$ergebnis' WHERE login = '$name'"; $sql = "UPDATE Key Set Activ = '0' WHERE Key = '$Key'"; $sql = "UPDATE Key Set ActivFor = '$Name' WHERE Key = '$Key'"; } } else echo "Der eingegebene Key Existiert nicht."; if($result2 == true) { echo "<center><font color=#FFFFFF>Der dir wurden $anzahl Coins gutgeschrieben <br> Und hast nun $anzahl2 Coins!</font></center>"; mysql_close(); } else { echo '<center><font color=#FFFFFF>Es ist ein fehler aufgetreten!!! </font></center> '; } } else { echo "Kein Gefunden der so heißt..." ; } } ?>
Beitrag zuletzt geändert: 28.5.2011 20:34:50 von senshi-network -
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage
-
Mal davon abgesehen, dass die letzte geschweifte Klammer da nicht hin gehört, ist das ganze Script für den Po.
Um mal Beispiele zu nennen:
if($sql->Activ == 0) {
Woher kommt $sql->Activ? Zuvor wurde $sql nur als Select-Statement definiert, nicht als Array.
$sql2 = "UPDATE account Set coins = '$ergebnis' WHERE login = '$name'"; $sql = "UPDATE Key Set Activ = '0' WHERE Key = '$Key'"; $sql = "UPDATE Key Set ActivFor = '$Name' WHERE Key = '$Key'";
Schön und gut. Aber was passiert damit? In deinem Script nichts. Du hast lediglich die Variablen definiert (dazu noch total wirr) und sonst nichts. Kein mysql_query, kein nichts.
if($result2 == true) {
Undefiniert.
Noch ein weiterer Tip: Du kannst dir wohl ein paar Zeilen sparen, wenn du folgendes Statement verwendest:
"UPDATE account Set coins = coins+".$wert." WHERE login = '".$name."'"
Beitrag zuletzt geändert: 28.5.2011 22:27:23 von fabo -
Hi, du solltest dir mal den Bereich "MySQL" unter http://www.schattenbaum.net/php/anzeigen.php anschauen.
@fabo: deine antwort war aber auch nicht sehr hilfreich...
lg
Doomdrake -
du hast bei zeile 18 stehen
else($sql->Activ == 1)
{
...
So ist es aber nicht richtig.
Es muss schon elseif wenn heißen.
Hier für dich nochmal das komplette Script!
<?php include ("checkuser.php"); include ("templates/key.html"); if(isset($_POST['submit']) && $_POST['submit'] == 'Senden') { include ("config_account.php"); $name = $_SESSION['user_nickname']; $Key = $_POST['Key']; $sql = mysql_query("SELECT * FROM Key WHERE Key='$Key'"); if(mysql_num_rows($sql)==1) echo "ja"; if($sql->Activ == 0) { echo "Der eingegebene Key Wurde Schon Aktiviert."; } elseif($sql->Activ == 1) { $wert = $sql->'Wert'; $sql2 = "SELECT * FROM account WHERE login = '$name'"; $result = mysql_query ($sql2); if (mysql_num_rows ($result) > 0) { $data = mysql_fetch_array ($result); $coins = $data['coins']; $ergebnis = $wert + $coins; $sql2 = "UPDATE account Set coins = '$ergebnis' WHERE login = '$name'"; $sql = "UPDATE Key Set Activ = '0' WHERE Key = '$Key'"; $sql = "UPDATE Key Set ActivFor = '$Name' WHERE Key = '$Key'"; } } else echo "Der eingegebene Key Existiert nicht."; if($result2 == true) { echo "<center><font color=#FFFFFF>Der dir wurden $anzahl Coins gutgeschrieben <br> Und hast nun $anzahl2 Coins!</font></center>"; mysql_close(); } else { echo '<center><font color=#FFFFFF>Es ist ein fehler aufgetreten!!! </font></center> '; } } else { echo "Kein Gefunden der so heißt..." ; } } ?>
P.S. kleine Fehler übersieht man immer wieder leicht ;) Keine sorge ich hoffe du lernst noch viel :) Viel spaß!
Beitrag zuletzt geändert: 2.6.2011 20:32:00 von habbobuild -
also ich habe die ganze zeit nicht hier nach geguckt aber ich hab den script jetzt mal aus probiert da kommt erst ein fehler dan hab ich in zeile 20 die ' ' weg gemacht und dann kommt zwar keine fehler meldung aber wenn ich auf den button klicke passiert nichts...
noch mal meine key.html
<center> <form action="key.php" method="post"> Key:</li><br> <input type="text" name="Key" size="60" /></li><br><br> <input type="submit" name="submit" value="Senden" /> </form> </center> </td> </tr> </table> </td> </tr> </table> <tr> </td> </tr> </table> </body> </html>
und die key.php
<?php include ("checkuser.php"); include ("templates/key.html"); if(isset($_POST['submit']) && $_POST['submit'] == 'Senden') { include ("config_account.php"); $id = $_COOKIE["user_id"]; $Key = $_POST['Key']; $sql = mysql_query("SELECT * FROM key WHERE key=$Key"); if(mysql_num_rows($sql)==1) echo "ja"; if($sql->Activ == 0) { echo "Der eingegebene Key Wurde Schon Aktiviert."; } elseif($sql->Activ == 1) { $wert = $sql->wert; $sql2 = "SELECT * FROM account WHERE id = $id"; $result = mysql_query ($sql2); if (mysql_num_rows ($result) > 0) { $data = mysql_fetch_array ($result); $coins = $data['coins']; $ergebnis = $wert + $coins; $sql2 = "UPDATE account Set coins = $ergebnis WHERE id = $id"; $sql = "UPDATE Key Set activ = '0' WHERE key = $Key"; $sql = "UPDATE Key Set activfor = $id WHERE key = $Key"; } } else echo "Der eingegebene Key Existiert nicht."; if($result2 == true) { echo "<center><font color=#FFFFFF>Der dir wurden $anzahl Coins gutgeschrieben <br> Und hast nun $anzahl2 Coins!</font></center>"; mysql_close(); } else { echo '<center><font color=#FFFFFF>Es ist ein fehler aufgetreten!!! </font></center> '; } } ?>
-
Diskutiere mit und stelle Fragen: Jetzt kostenlos anmelden!
lima-city: Gratis werbefreier Webspace für deine eigene Homepage