Ankündigung

Einklappen
Keine Ankündigung bisher.

Fehler!?

Einklappen

Neue Werbung 2019

Einklappen
X
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • Fehler!?

    Hey kann mir wer helfen ich finde in meinen Code den Fehler nicht.

    PHP-Code:
     <?php
     
    if (button==" OK ") {
     include(
    "db.php");
     
    $query "SELECT * FROM login WHERE id='$id'";
     
    $result mysql_query($query);
     
    $line mysql_fetch_array($result)
     
    ?> 
       <?php
     $id3 
    $line[id];
      
    setcookie ("id3",$id3time()+3600); 
     
     
    $Angriff5 $line[Angriff];
      
    setcookie ("Angriff5",$Angriff5time()+3600); 
      
    $v6 rand(1,3);
      if (
    $Angriff5>=4) {
      
    $v6 rand(2,5);
         }
        include(
    "db.php");
     
    $query "SELECT * FROM login WHERE user='$user6'";
     
    $result mysql_query($query);
     
    $line mysql_fetch_array($result)
    if ( 
    $line[user] != $user6 ) {
     echo 
    "Dieser User existiert nicht!"
     
    } else {
     
    $id4 $line[id];
      
    setcookie ("id4",$id4time()+3600);
       
    $Angriff6 $line[Angriff];
      
    setcookie ("Angriff6",$Angriff6time()+3600); 
        
    $v7 rand(1,3);
      if (
    $Angriff6>=4) {
      
    $v7 rand(2,5);
         }
      if (
    $v6>$v7) {
      echo 
    "Du hast gewonnen!";
          include(
    "db.php");
     
    $query "SELECT * FROM login WHERE id='$id4'";
     
    $result mysql_query($query);
     
    $line mysql_fetch_array($result)
     
    $Geld8 $line[Geld] ;
     
    $Geld9 0;
       include(
    "db.php");
       
    mysql_query("UPDATE login SET Geld='$Geld9'  WHERE id='$id4'");
     
    mysql_close();
           include(
    "db.php");
     
    $query "SELECT * FROM login WHERE id='$id3'";
     
    $result mysql_query($query);
     
    $line mysql_fetch_array($result)
     
     
    $Geld10 $Geld8 $line[Geld] ;
        include(
    "db.php");
       
    mysql_query("UPDATE login SET Geld='$Geld10'  WHERE id='$id3'");
     
    mysql_close();
       
    ?>
       <?php
       
    }
       if (
    $v7>$v6) {
       echo 
    "Du hast verloren!";
       include(
    "db.php");
     
    $query "SELECT * FROM login WHERE id='$id3'";
     
    $result mysql_query($query);
     
    $line mysql_fetch_array($result)
     
    $Geld8 $line[Geld] ;
     
    $Geld9 0;
       include(
    "db.php");
       
    mysql_query("UPDATE login SET Geld='$Geld9'  WHERE id='$id3'");
     
    mysql_close();
           include(
    "db.php");
     
    $query "SELECT * FROM login WHERE id='$id4'";
     
    $result mysql_query($query);
     
    $line mysql_fetch_array($result)
     
     
    $Geld10 $Geld8 $line[Geld] ;
        include(
    "db.php");
       
    mysql_query("UPDATE login SET Geld='$Geld10'  WHERE id='$id4'");
     
    mysql_close();
       
    ?>
       <?php
       
    }
       if (
    $v7==$v6)
       echo 
    "Unentschieden!";
       }
       }
       
    ?>
       <br />
       <a href="hs.php?id=<?PHP echo $id3?>"><strong><span class="Stil1">Zum Hauptmenü</span></strong></a>
       <?php
       
    }
       
    ?>
     
        <form method="post" action="Angriff.php?id=<?PHP echo $id?>?user=<?PHP echo $user6?>">
     <input type="text" name="user6" value=""><br>
     <input type="submit" name="button" value=" OK ">
     </form>
    Der zeigt son Fehler an:

    PHP-Code:
    Parse errorsyntax errorunexpected T_IF in /usr/export/www/vhosts/funnetwork/hosting/fightgame/Attacke.php on line 34 
    Danke schon mal für eure Hilfe

  • #2
    Schau in Zeile 33 oder 34 da fehlt ein ;

    Kommentar


    • #3
      Hi,

      du solltest dich sowohl mit HTML noch mehr beschäftigen als auch erstmal PHP richtig lernen, bevor du ein Browsergames programmierst.
      Mit Funktionen und OOP läuft alles wesentlicht besser.
      Außerdem solltest du ein bisschen kommentieren und einrücken
      Ich hab das ganze mal berichtigt und alle meine Schritte kommentiert.
      PHP Tuts: #php/QuakeNet Tutorial - Einführung
      PHP-Code:
      <?php
      // HTML Dinge? <html>, Doctype, <head> Teil, <body> Teil?
      // isset() - überprüft ob Variable vorhanden
      if (isset($_POST['button'])) {
        include(
      "db.php");
        
      // Diese brauchst du nur einmal includen, dann sind die ganzen mysql_close() auch unnötig.
        // Du kannst auch $line von ganz am Anfang des Skriptes später benutzen, du brauchst also nicht so viele selects.
        
      $query "SELECT * FROM login WHERE id='".$id."'";
        
      // Wo auch immer das $id herkommt o0
        
      $result mysql_query($query);
        
      $line mysql_fetch_array($result);

        
      // $id3 = $line['id'];
        // Es ist doch $id3 = $id, da du mit $id rausgesucht hast. Also ist $line['id'] = $id
        
      setcookie ("id3",$idtime()+3600); 
       
        
      $Angriff5 $line['Angriff'];
        
      setcookie ("Angriff5",$Angriff5time()+3600); 
        
      $v6 rand(1,3);
        if (
      $Angriff5 >=4) {
          
      $v6 rand(2,5);
        }

       
      $query2 "SELECT * FROM login WHERE user='".$user6."'";
       
      $result2 mysql_query($query2);
       
      $line2 mysql_fetch_array($result2);
          if ( 
      $line2['user'] != $user6 ) {
            echo 
      "Dieser User existiert nicht!"
          
      } else {
            
      $id4 $line2['id'];
            
      setcookie ("id4",$id4time()+3600);
            
      $Angriff6 $line2['Angriff'];
            
      setcookie ("Angriff6",$Angriff6time()+3600); 
            
      // $v7 = rand(1,3); <-- raus hier... fügen wir es in ein else ein.
              
      if ($Angriff6>=4) {
                
      $v7 rand(2,5);
              }else{
                
      // also hier
                
      $v7 rand(1,3);
              }
              if (
      $v6>$v7) {
                echo 
      "Du hast gewonnen!";

                
      // $query3 = "SELECT * FROM login WHERE id='".$id4."'";
                // Da dieses Select im Grunde gleich dem von $query2 ist, nur das mit ID rausgesucht wird, 
                // kann man hier genausogut $line2 benutzen und $query3, $line3 sowie $result3 rausstreichen.
                // $result3 = mysql_query($query3);
                // $line3 = mysql_fetch_array($result3);
                // Da dieses Select im Grunde gleich dem von $query2 ist, nur das mit ID rausgesucht wird, 
                // kann man hier genausogut $line2 benutzen und $query3, $line3 sowie $result3 rausstreichen.
                
      $Geld8 $line2['Geld'];
                
      $Geld9 "0";

                
      mysql_query("UPDATE login SET Geld='".$Geld9."'  WHERE id='".$id4."'");

                
      // Das gleiche wie beim $query3: Rausstreichen, Du hast dieses Select doch schon am Anfang gemacht o0
                //$query4 = "SELECT * FROM login WHERE id='".$id3."'";
                //$result4 = mysql_query($query4);
                //$line4 = mysql_fetch_array($result4)
                // Da würde z.B. ein ; fehlen, also 
                //$line4 = mysql_fetch_array($result4); wäre richtig.
       
                
      $Geld10 $Geld8 $line['Geld'];

                
      mysql_query("UPDATE login SET Geld='".$Geld10."'  WHERE id='".$id."'");

              }elseif (
      $v7>$v6) {
              
      // Nutze die Funktion elseif! Ist Praktischer ;)
                
      echo "Du hast verloren!";

                
      // Raus damit^^ Ist das gleiche wie am Anfang
                // ^^
                //$query = "SELECT * FROM login WHERE id='$id'";
                //$result = mysql_query($query);
                //$line = mysql_fetch_array($result)
                
      $Geld8 $line['Geld'];
                
      $Geld9 0;

                
      mysql_query("UPDATE login SET Geld='".$Geld9."'  WHERE id='".$id."'");

                
      // ==  $query2 etc 
                //$query = "SELECT * FROM login WHERE id='".$id4."'";
                //$result = mysql_query($query);
                //$line = mysql_fetch_array($result)
       
                
      $Geld10 $Geld8 $line2['Geld'];

                
      mysql_query("UPDATE login SET Geld='".$Geld10."'  WHERE id='".$id4."'");


              }elseif (
      $v7==$v6) {
                echo 
      "Unentschieden!";
              }
            }
         
      ?>
         <br />
         <a href="hs.php?id=<?php echo $id3?>"><strong><span class="Stil1">Zum Hauptmenü</span></strong></a>
         <?php
         
      }
         
      ?>
       
          <form method="post" action="Angriff.php?id=<?PHP echo $id?>?user=<?PHP echo $user6?>">
          <!--
          Versteckte inputs:
          <input type="hidden" name="user6" value="">
          In value="" musst du dann den PHP Befehl einbauen.
          -->
          <input type="text" name="user6" value=""><br>
          <input type="submit" name="button" value="OK">
          </form>
      Ich habe es nicht ausbrobiert, da ich deine DB Struktur etc alles nicht kenne, aber eigentlich sollte es funktionieren.
      Tipp: Meistens sind PHP Fehlermeldungen in englisch. Übersetz sie einfach mal, wahrscheinlich sagt die Meldung was aus

      lg
      Chrissi

      Kommentar


      • #4
        Chrissi \o/

        pack an den Anfang noch ein error_reporting("E_ALL")

        Kommentar

        Lädt...
        X