[PHP5] eine if abfrage geht nicht die anderen schon

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

  • [PHP5] eine if abfrage geht nicht die anderen schon

    hallo zusammen, ich habe ein problem mit diesem script.
    ich versuche mir ein sql statement zusammenzubasteln.
    ich übergeb verschiedene parameter, falls dies leer sind soll entsprechend reagiert werden.
    das zuammenbasteln klappt zwar sehr gut, aber wenn ich für den login nichts eingebe, geht er nicht in die schleife - alle anderen if abfragen klappen sehr gut. ich kann aber keínen fehler feststellen bei dem login
    ich gebe ihn auch nocheinmal aus (o '<br>login_...'.$login.'..._login<br>'
    die punkte sind miteinander verbunden, d.h. es muss eine leere variable sein und somit sollte meien if abfrage klappen.
    mein hallo echo wird in der schleife auchnicht ausgeführt.

    braucht ihr noch etwas script? ich denke ich habe alle notwendig erklärt und gepostet.
    ich hoffe ihr könnt mir helfen. ich bin verwirrt
    dankeschön

    PHP-Code:

    $sqlgesamt
    ="UPDATE $tabelle SET";

    if(
    $pwd1=="")//wenn pwd leer pwd aus tabelle und in statenment einfügen
    {$sql2 ='passwort'$sqlgesamt$sqlgesamt .' '$sql2;}
        
    if(
    $login="")//wenn login leer login aus tabelle und in statenment einfügen
    {echo'hallllllo'$sql2 ='-login-'$sqlgesamt$sqlgesamt .' '$sql2;}
    echo 
    '<br>login_...'.$login.'..._login<br>';    

    if(
    $name=="")//wenn name leer name aus tabelle und in statenment einfügen
    {$sql2 ="-name-"$sqlgesamt$sqlgesamt .' '$sql2;}
        
    if(
    $dezernat=="")//wenn dezernat leer dez aus tabelle und in statenment einfügen
    {$sql2 ="-dezernat-"$sqlgesamt$sqlgesamt .' '$sql2;}


    $sql2="WHERE $tabelle.userid='$userid'";
    $sqlgesamt$sqlgesamt .' '$sql2
    www.flyer4fun.de

  • #2
    - Wo ist dein Debugging?
    - Einsehbare Passwörter?

    im ganzen gesehen ist das leider ein unübersichtlicher Haufen......
    Ohne ein , zu setzen wirds auch falsch. Nach jeder Spalte zum Updaten erfolgt ein Komma.....

    Bau in dein mysql_query(); ein or die('SQL Error: <b>'.mysql_error().'</b>');

    ein
    [color=blue]MfG Payne_of_Death[/color]

    [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
    [color=red]Merke:[/color]
    [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

    Murphy`s Importanst LAWS
    Jede Lösung bringt nur neue Probleme
    Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
    In jedem kleinen Problem steckt ein großes, das gern raus moechte.

    Kommentar


    • #3
      oh. ich glaube ich habe mich etwas ungenau ausgedrückt, ich bin noch anfänger tut mir leid.

      erste berichtigung. ich verwende postgreSQL

      also bisher mache ich noch keine sql abfragen sondern will erstmal sichergehen dass meine statements richtig zusammengefügt werden.

      als beispiel

      PHP-Code:

      if($name=="")//wenn name leer name aus tabelle und in statenment einfügen
      {$sql2 ="-name-"$sqlgesamt$sqlgesamt .' '$sql2;} 
      wenn der name leer ist soll an das anfangsstatement
      PHP-Code:
      $sqlgesamt="UPDATE $tabelle SET"
      dahinter das hingestzt werden:
      PHP-Code:
      -name
      mit diesem befehl der alte aufruf wird ersetzt mit dem zusätzlichen anhang des neuen
      PHP-Code:
      -
      $sqlgesamt$sqlgesamt .' '$sql2;} 
      damit nacher der aufruf so aussieht:
      $sqlgesamt="UPDATE $tabelle SET name ....(der rest wird durch ander bedingungen angefügt)

      so arbeitet man sich durch bedingungen vor die dann im endeffekt ein sqlgesamt statement entstehen lassen.

      mit mysql kenn ich micht aus, deswegen kann ich auf deine antwort von oben nicht direkt eingehen und weiss auch nicht was du durch meine fehlende beschreibeung reininterpretiert hast.

      - Wo ist dein Debugging? - wie mach ich das?
      - Einsehbare Passwörter? - wird per post übergeben und überprüft ob leer.



      ich hoff mein problem ist jetzt klarer gesworden.
      www.flyer4fun.de

      Kommentar


      • #4
        Indem man sich die Vars anschaut und mal überlegt warum springt er nicht rein.....

        empty();
        ist wohl besser als dieser Vergleich da ob leer....

        Daneben gibts du noch dein Statement aus
        [color=blue]MfG Payne_of_Death[/color]

        [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
        [color=red]Merke:[/color]
        [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

        Murphy`s Importanst LAWS
        Jede Lösung bringt nur neue Probleme
        Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
        In jedem kleinen Problem steckt ein großes, das gern raus moechte.

        Kommentar


        • #5
          ok danke fuer den emty() tipp jetzt klappt es.
          komischerweisse, hab ich die variable die probleme bereitet hat ja testweisse ausgegeben, aber hatte nicht den erfolg den ich mir erdacht habe.

          jetzt ists aufjedenfall die bessere alternative. danke vielmals
          www.flyer4fun.de

          Kommentar


          • #6
            PHP-Code:
            //hier ist dein Fehler, macht 5,00 EUR in die php-res. Kollektiv Kasse
            if($login="")
            //siehst du den Fehler? 

            == ist gleich
            != ist ungleich
            = ist eine Zuweisung
            mfg
            marc75

            <Platz für anderes>

            Kommentar


            • #7
              Original geschrieben von marc75
              PHP-Code:
              //hier ist dein Fehler, macht 5,00 EUR in die php-res. Kollektiv Kasse
              if($login="")
              //siehst du den Fehler? 

              == ist gleich
              != ist ungleich
              = ist eine Zuweisung
              Ist mir gar nicht aufgefallen

              wenn so gestanden wäre:

              PHP-Code:
              if ( "" $login 
              wäre es aufgefallen beim Debuggen...... So passieren die Flüchtigkeitsfehler nicht.....Naja ich hab mir das aber auch im Laufe der Zeit andersrum angewöhnt....
              [color=blue]MfG Payne_of_Death[/color]

              [color=red]Manual(s):[/color] <-| PHP | MySQL | SELFHTML |->
              [color=red]Merke:[/color]
              [color=blue]Du brauchst das Rad nicht neu erfinden ! [/color]<-ForumSuche rettet Leben-> || <-Schau in den Codeschnippsels->

              Murphy`s Importanst LAWS
              Jede Lösung bringt nur neue Probleme
              Das Fluchen ist die einzige Sprache, die jeder Programmierer beherrscht.
              In jedem kleinen Problem steckt ein großes, das gern raus moechte.

              Kommentar

              Lädt...
              X