If Fehler ?

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

  • If Fehler ?

    Hi,

    ich bin mal wieder am Basteln, also
    ich übergebe etwas per GET und will es mit dem Befehl überprüfen:

    PHP-Code:
    if($_GET['vname'] != '$vname')

        echo 
    "gut";
        {
         echo 
    "schlecht";

         } 
    aber ich bekomme nur diese Fehlermeldung:

    Parse error: syntax error, unexpected T_STRING in D:\server\xampp\htdocs\neu\step2.php on line 15
    Nu ich sehe da eigentlich kein Fehler, vll findet Ihr einen

    MFG
    Dennis

  • #2
    1. "else" fehlt
    2. dein drang, variablen in etwas einzuschließen, spielt dir wohl bald einen streich.

    Kommentar


    • #3
      Ich habe mir angewöhnt IMMER geschweifte Klammern zu setzen. Das macht es meistens übersichtlicher und außerdem wär dann das }{ aufgefallen.

      PHP-Code:
      if($_GET['vname'] != '$vname') {
         echo 
      "gut";
      } else {
         echo 
      "schlecht";

      Wer einen Weisen dumm fragt, wird eine kluge Antwort bekommen. Es ist nur die Frage, ob er sie auch versteht.

      Kommentar


      • #4
        @telmich

        Dein Beispiel geht auch nicht.

        @penizillin

        ich war der meinung das dies auch ohne Else geht ?!

        Kommentar


        • #5
          Dein Beispiel geht auch nicht.
          "geht nicht" ist für die katz. eine fehlerbeschreibung sollte man als webentwickler schon liefern können.
          ich war der meinung das dies auch ohne Else geht ?!
          ohne else hat es eine andere semantische bedeutung.

          Kommentar


          • #6
            "geht nicht" ist für die katz. eine fehlerbeschreibung sollte man als webentwickler schon liefern können.
            Hätte sich was geändert so würde ich das ja hier Posten, Aber nochmal:

            Parse error: syntax error, unexpected T_STRING in D:\server\xampp\htdocs\neu\step2.php on line 15
            und vorsichtshalber mal den Ganzen Code:

            <?
            include("includes/config.inc.php");
            include("includes/functions.inc.php");


            $smarty = new Smarty;

            $smarty->assign('title', 'keine ahnung');
            $smarty->assign('seite', 'Step2');
            $smarty->assign('content', '

            $vname = $_GET[vname];


            if($_GET['vname'] != '$vname') {
            echo "gut";
            } else {
            echo "schlecht";
            }


            ');

            $smarty->display('index.tpl');
            ?>

            Kommentar


            • #7
              dann erkläre mir mal die semantik der dritten assign-zuweisung.

              arbeite stets mit E_ALL.

              Kommentar


              • #8
                dann erkläre mir mal die semantik der dritten assign-zuweisung.
                meinst du das hier etwa:

                PHP-Code:
                '); 
                Falls ja so gehöhrt es hier zu:

                PHP-Code:
                $smarty->assign('content'
                arbeite stets mit E_ALL.
                najut habe es mal eingefügt aber mehr bekomme ich auch nicht raus.

                Kommentar


                • #9
                  so geht das nicht.

                  und hättest du dir die mühe gegeben, http://de2.php.net/manual/en/language.types.string.php durchzulesen, wüsstest du das selbst.

                  und wenn du php-tags benutzen würdest, könntest du sogar an dem syntax-highlighting feststellen, dass es unfug ist.

                  Kommentar


                  • #10
                    Naklar habe ich mich im vorfeld bemüht also

                    so geht es:

                    PHP-Code:
                    <?php
                    include("includes/config.inc.php");
                    include(
                    "includes/functions.inc.php");


                        
                    $smarty = new Smarty;

                        
                    $smarty->assign('title''Main System Domains');
                        
                    $smarty->assign('seite''Bestellung');
                        
                    $smarty->assign('content'' ');


                        if(
                    $_GET['vname'] != '$vname') {
                    echo 
                    "gut";
                    } else {
                    echo 
                    "schlecht";
                    }





                        
                    $smarty->display('index.tpl');
                    ?>
                    Aber es wierd nur oben rechts was angezeigt und nicht im content.

                    und so geht es nicht:

                    PHP-Code:
                     <?php
                    include("includes/config.inc.php");
                    include(
                    "includes/functions.inc.php");


                        
                    $smarty = new Smarty;

                        
                    $smarty->assign('title''Main System Domains');
                        
                    $smarty->assign('seite''Bestellung');
                        
                    $smarty->assign('content''


                        if($_GET['
                    vname'] != '$vname') {
                    echo "gut";
                    } else {
                    echo "schlecht";
                    }



                    '
                    );

                        
                    $smarty->display('index.tpl');
                    ?>
                    Vll habe ich ja auch was Falsch verstanden ?!

                    Kommentar


                    • #11
                      Aber es wierd nur oben rechts was angezeigt und nicht im content.
                      du wirst zugeben müssen, das ist nun ein ganz anderes problem, als eine kaputte if-abfrage.
                      Vll habe ich ja auch was Falsch verstanden ?!
                      mit sicherheit.

                      kenne / mag zwar smarty nicht, aber ich nehme an, das zweite parameter von assign soll ein string sein. evtl. düftest du soetwas suchen:
                      PHP-Code:
                      $smarty->assign('content', ($_GET['vname']=='foo' 'foo' 'bar')); 

                      Kommentar


                      • #12
                        Original geschrieben von /etc/
                        Naklar habe ich mich im vorfeld bemüht also

                        so geht es:

                        PHP-Code:
                        <?php
                        include("includes/config.inc.php");
                        include(
                        "includes/functions.inc.php");


                            
                        $smarty = new Smarty;

                            
                        $smarty->assign('title''Main System Domains');
                            
                        $smarty->assign('seite''Bestellung');
                            
                        $smarty->assign('content'' ');


                            if(
                        $_GET['vname'] != '$vname') {
                        echo 
                        "gut";
                        } else {
                        echo 
                        "schlecht";
                        }





                            
                        $smarty->display('index.tpl');
                        ?>
                        Aber es wierd nur oben rechts was angezeigt und nicht im content.

                        und so geht es nicht:

                        PHP-Code:
                         <?php
                        include("includes/config.inc.php");
                        include(
                        "includes/functions.inc.php");


                            
                        $smarty = new Smarty;

                            
                        $smarty->assign('title''Main System Domains');
                            
                        $smarty->assign('seite''Bestellung');
                            
                        $smarty->assign('content''


                            if($_GET['
                        vname'] != '$vname') {
                        echo "gut";
                        } else {
                        echo "schlecht";
                        }



                        '
                        );

                            
                        $smarty->display('index.tpl');
                        ?>
                        Vll habe ich ja auch was Falsch verstanden ?!

                        Brr wenn ich das schon seh...
                        Mich würd mal interessieren, wie du auf die Idee mit dem Echo kommst.

                        Nur so als kleiner Tipp:

                        PHP-Code:
                         <?php
                        include("includes/config.inc.php");
                        include(
                        "includes/functions.inc.php");


                            
                        $smarty = new Smarty;

                            
                        $smarty->assign('title''Main System Domains');
                            
                        $smarty->assign('seite''Bestellung');
                            


                            if(
                        $_GET['vname'] != $vname) {
                               
                        $var"gut";
                            } else {
                               
                        $var"schlecht";
                            }

                            
                        $smarty->assign('content'$var);

                            
                        $smarty->display('index.tpl');
                        ?>
                        Ich würd dir mal vorschlagen, dass du mal schaust was echo macht.


                        Ne if-Abfrage in nen Funktionsaufruf zu schreiben, und das soll dan jemand nach nem halben jahr wieder lesen können. Man fasst es nicht *kopfschüttel*
                        Zuletzt geändert von flyx; 31.03.2006, 09:26.

                        Kommentar


                        • #13
                          Ach nochwas:
                          PHP-Code:
                          if($_GET['vname'] != '$vname'){
                            echo 
                          'dollar vname';
                          }else{
                            echo 
                          'irgendwas';

                          Macht irgendwie auch keinen sinn....

                          Kommentar


                          • #14
                            @\etc\
                            schon mal was davon gehört, dass man variablen nicht in einfache hochkommata setzt?
                            PHP-Code:
                            if($_GET['vname'] != '$vname'
                            PHP-Code:
                            if($_GET['vname'] != $vname
                            gruß
                            peter
                            Nukular, das Wort ist N-u-k-u-l-a-r (Homer Simpson)
                            Meine Seite

                            Kommentar


                            • #15
                              Da hab ich gar nicht dran gedacht, dass ja auch [COLOR=red]$vname[/COLOR] gemeint sein könnte. Naja, wenn es das war, dann ...
                              Sonst würde ich für eine Zuweisung von verschiedenen Werten mal folgendes probieren:
                              PHP-Code:
                              $smarty->assign('content', (($_GET['vname'] != $vname)?'gut':'schlecht') ); 
                              Kurz erklärt
                              PHP-Code:
                              $irgendwas = ($Bedingung?$wennBedingungWahr:$wennBedingungNichtWahr
                              $irgendwas enthält $wennBedingungWahr wenn $Bedingung wahr ist, sonst enthält es $wennBedingungNichtWahr
                              Wer einen Weisen dumm fragt, wird eine kluge Antwort bekommen. Es ist nur die Frage, ob er sie auch versteht.

                              Kommentar

                              Lädt...
                              X