2 if abfragen in einem implode ?

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

  • 2 if abfragen in einem implode ?

    moin habe diese abfrage :
    PHP-Code:
    <?php
    if(isset($_POST['speichern'])){
    if(!empty(
    $_POST['mem_rights'])){
    mysql_query("UPDATE deadline_user
    SET mem_rights = 'checked' WHERE ID IN ("
    .implode(","$_POST['mem_rights']).")");
    }
    elseif(empty(
    $_POST['mem_rights'])){
    mysql_query("UPDATE deadline_user
    SET mem_rights = '' WHERE ID IN ("
    .implode(","$_POST['mem_rights']).")");
    }
    }
    ?>
    ist es irgendwie möglich die 2 if + update befehl zu vereinen und dann implode auszuführen ? weil so wie es jetzt ist gehts natürlich nicht.

    die checkbox sieht so aus und kommt aus einer while schleife :

    PHP-Code:
    <input type="checkbox" name="mem_rights[]"
    value="<?php echo $row['ID'];?><?php echo $row['mem_rights'];?>>
    denn so wie es oben gebaut ist geht es halt nicht.
    Zuletzt geändert von vizor; 12.10.2005, 16:37.

  • #2
    wie oft wurde dir schon gesagt, dass du

    1. den code umbrechen,
    2. E_ALL und mysql_error() benutzen und
    3. mehr als "geht nicht" berichten

    sollst?

    Kommentar


    • #3
      lass dir deine $_POST['mem_rights'] mal mit print_r() ausgeben.
      - einmal bei angeklickten boxen
      - einmal ohne

      wenn du den unterschied erkennst, sollte sich auch deine frage beantworten
      Kissolino.com

      Kommentar


      • #4
        @pen: danke für mal wieder nix.wenn der scrollbalken nur 2 cm weiter rüber geht geht die welt auch nicht unter,ausserdem hab ich sonst immer editiert.nur du antwortest immer gleich so schnell das man dafür öhm...zuwenig zeit hat...in der vorschau waren halt keine scrollbalken.

        mit geht nicht sagte ich das die ganze if abfrage völlig unlogisch ist mit doppeltem implode und ich sie nur als beispiel da stehen hab.ich will sie ja zusammen fügen,leider hab gibt es ja nirgendswo was dokumentiert wie man ein mehrfaches db update(incl WHERE) macht mit einem form.habe das ganze ding schon mit dropdownmenu probiert leider kann ich da keine 2 werte in $_POST['mem_rights'] stopfen also ging das nicht(oder ich weiss nur noch nicht wie)
        acha und error all brauch ich denn ja wohl kaum
        @wurzel,hm k mal sehen was sich machen lässt

        Kommentar


        • #5
          entschuldige. aber du bist imho nicht in der lage deutlich zu erklären, was

          a) du willst,
          b) was du versucht hast und
          c) was daran nicht funktioniert hat.

          erst dank Wurzels antwort habe ich verstanden, was du vor hast.

          ein anderer ansatz wäre - erste query setzt alle einträge auf 'unchecked', zweite query setzt die auf 'checked', die übertragen wurden.

          Kommentar


          • #6
            Original geschrieben von vizor
            @pen: danke für mal wieder nix.wenn der scrollbalken nur 2 cm weiter rüber geht geht die welt auch nicht unter,ausserdem hab ich sonst immer editiert.
            die welt geht davon nicht unter, aber es ist nervig zu lesen und eine vorschrift von dem forum. daher sollte man sich einfach dran halten.

            gruß

            Kommentar


            • #7
              DAAAAANKE !!!
              das ist der richtige weg! endlich,puh! da saß ich 3 tage dran!
              hier nochmal an die leute die das auch irgendwann versuchen,hab das jetzt so gemacht:
              PHP-Code:
              if(isset($_POST['speichern'])){
              mysql_query("UPDATE deadline_user SET mem_rights = ''");

              if(isset(
              $_POST['mem_rights'])){
              mysql_query("UPDATE deadline_user
              SET mem_rights = 'checked' WHERE ID IN ("
              .implode(","$_POST['mem_rights']).")");
              }


              danke@euch
              achja,und die checkbox:
              <input type="checkbox" name="mem_rights[]"
              value="<?php echo $row['ID'];?>" <?php echo $row['mem_rights'];?>>

              Kommentar


              • #8
                oha,wo wir gerade dabei sind,wie macht man das denn mit mehreren checkboxen ? habe es so versucht :
                PHP-Code:
                <?php
                if(isset($_POST['speichern'])){
                mysql_query("UPDATE deadline_user
                SET mem_rights = '',news_write = ''"
                );

                if(isset(
                $_POST['mem_rights'])){
                mysql_query("UPDATE deadline_user
                SET mem_rights = 'checked' WHERE ID IN ("
                .implode(","$_POST['mem_rights']).")");
                }
                if(isset(
                $_POST['news_write'])){
                mysql_query("UPDATE deadline_user
                SET news_write = 'checked' WHERE ID IN ("
                .implode(","$_POST['news_write']).")");
                }
                }
                bloss dann kommt weder eine errormeldung noch fügt er bei dem 2tem feld was ein.kann man das überhaupt oder muss man für jede checkbox ein form bauen ? wäre fatal
                nurnoch diese frage dann nerv ich auch nichtmehr


                komando zurück! ich dödel hab varchar in der datenbank auf 4 begrenzt,darum gehts nicht :-]
                Zuletzt geändert von vizor; 12.10.2005, 17:13.

                Kommentar


                • #9
                  Original geschrieben von penizillin
                  2. E_ALL und mysql_error() benutzen
                  ^^ ansonsten sollte es nämlich so gehen.
                  Kissolino.com

                  Kommentar


                  • #10
                    OffTopic:
                    http://www.google.de/search?hl=de&q=%22widersprich+niemals+einer+frau%22&meta=

                    Kommentar


                    • #11
                      hehe
                      ps : schonmal auf den ersten link bei der google suche geklickt und den witz "widersprich niemals einer frau" gelesen ?

                      Kommentar

                      Lädt...
                      X