Mehrere Aktionen in Datenbank ausführen

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

  • Mehrere Aktionen in Datenbank ausführen

    also ich habe folgendes script, dass mir alle Daten aus einer Tabelle ausliest und auflistet. Zusätzlich erscheinen dahinter noch zwei checkboxen, die man ändern kann. Diese Änderungen sollen nun wieder in die Datenbank geschrieben werden. Habe allerdings absolut keinen Peil wie ich das machen könnte. Wäre nett wenn mir jemand hilft!
    PHP-Code:
    <?
    include "config.php";
    error_reporting(E_ALL);
    $db = @mysql_connect($host, $user, $passw) or die ("Sollte die
     diese Fehlermeldung weiterhin erscheinen, informieren Sie bitte den Admin der Seite!!!!!!!!!!");



    @mysql_select_db($database, $db) or die ("Sollte die diese 
    Fehlermeldung weiterhin erscheinen, informieren Sie bitte den Admin der Seite!");

    $sql = "SELECT

                    ID,date,title,details,active

                FROM

                    $table ORDER BY date ASC 

                ";
       $result = mysql_query($sql) OR die(mysql_error());

            

    echo '<form action="action.php" method="post">';    

        while($row = mysql_fetch_assoc($result)) { 
    if ($row['active']==1) {

            print ('<table width="625" border="0" cellpadding="0" cellspacing="0">
      <!--DWLayoutTable-->
      <tr>
        <td width="129" height="34" valign="top">'.$row['date'].'</td>
        <td width="100" valign="top">'.$row['title'].'</td>
        <td width="190">&nbsp;</td>
        <td width="206">&nbsp;</td>
      </tr>
      <tr>
        <td height="96" colspan="3" valign="top">'.$row['details'].'</td>
        <td valign="top"><input type="checkbox" name="active" 
    value="checkbox" checked="checked" />Active<br><input 
    type="checkbox" name="'.$row['ID'].'" value="'.$row['ID'].'" 
    />Löschen</td>
      </tr>
    </table>');
    }
    else
    {  print ('<table width="625" border="0" cellpadding="0" cellspacing="0">
      <!--DWLayoutTable-->
      <tr>
        <td width="129" height="34" valign="top">'.$row['date'].'</td>
        <td width="100" valign="top">'.$row['title'].'</td>
        <td width="190">&nbsp;</td>
        <td width="206">&nbsp;</td>
      </tr>
      <tr>
        <td height="96" colspan="3" valign="top">'.$row['details'].'</td>
        <td valign="top"><input type="checkbox" name="active" 
    value="checkbox" />Active<br><input type="checkbox" 
    name="'.$row['ID'].'" value="'.$row['ID'].'" />Löschen</td>

      </tr>
    </table>');}}
    echo '</form>';
    ?>
    Zuletzt geändert von smepal; 01.06.2006, 13:20.

  • #2
    danke
    Zuletzt geändert von phpnueling; 21.10.2006, 23:52.

    Kommentar


    • #3
      wieso da stehen doch bloß die Logindaten drin, die gehen niemanden was an!!!

      Kommentar


      • #4
        so ich habs jetzt schon gelöst hat zwar was gedauert aber bitte:
        PHP-Code:
        <style type="text/css">
        <!--
        body {
            font-family: Arial, Helvetica, sans-serif;
        }
        -->
        </style>

        <?
        include "config.php";
        error_reporting(E_ALL);
        $db = @mysql_connect($host, $user, $passw) or die ("Sollte die diese Fehlermeldung weiterhin erscheinen, informieren Sie bitte den Admin der Seite!!!!!!!!!!");



        @mysql_select_db($database, $db) or die ("Sollte die diese Fehlermeldung weiterhin erscheinen, informieren Sie bitte den Admin der Seite!");
        if (isset($_POST['active'])) 
        {
            foreach ($_POST['active'] as $ID)
            {
                 $sql = "UPDATE $table SET active = 1 WHERE ID = $ID";
                $result = mysql_query($sql) OR die(mysql_error());
            } 
        }

        if (isset($_POST['deactive'])) 
        {
            foreach ($_POST['deactive'] as $ID)
            {
                 $sql = "UPDATE $table SET active = 0 WHERE ID = $ID";
                $result = mysql_query($sql) OR die(mysql_error());
            } 
        }

        if (isset($_POST['delete'])) 
        {
            foreach ($_POST['delete'] as $ID)
            {
                 $sql = "DELETE FROM $table WHERE ID = $ID";
                $result = mysql_query($sql) OR die(mysql_error());         
            } 
        }    



        $sql = "SELECT

                        ID,date,title,details,active

                    FROM

                        $table ORDER BY date ASC 

                    ";
           $result = mysql_query($sql) OR die(mysql_error());

                

        echo '<form action="admin.php" method="post">';    

            while($row = mysql_fetch_assoc($result)) { 
        if ($row['active']==1) {

                print ('<table width="625" border="0" cellpadding="5" cellspacing="5">
          <!--DWLayoutTable-->
          <tr>
            <td width="129" height="34" valign="top"><b>'.$row['date'].'</b></td>
            <td width="100" valign="top"><b>'.$row['title'].'</b></td>
            <td width="190">&nbsp;</td>
            <td width="206">&nbsp;</td>
          </tr>
          <tr>
            <td height="96" colspan="3" valign="top">'.$row['details'].'</td>
            <td valign="top"><input type="checkbox" name="deactive[]" value="'.$row['ID'].'"/><font color="red"><b>Deaktivieren</b></font> 
             
              <br><input type="checkbox" name="delete[]" value="'.$row['ID'].'" />Löschen</td>
          </tr>
        </table>');
        }
        else
        {  print ('<table width="625" border="0" cellpadding="5" cellspacing="5">
          <!--DWLayoutTable-->
          <tr>
            <td width="129" height="34" valign="top"><b>'.$row['date'].'</b></td>
            <td width="100" valign="top"><b>'.$row['title'].'</b></td>
            <td width="190">&nbsp;</td>
            <td width="206">&nbsp;</td>
          </tr>
          <tr>
            <td height="96" colspan="3" valign="top">'.$row['details'].'</td>
            <td valign="top"><input type="checkbox" name="active[]" value="'.$row['ID'].'" /><font color="green"><b>Aktivieren</b></font>
              <br><input type="checkbox" name="delete[]" value="'.$row['ID'].'" />Löschen</td>
          </tr>
        </table>');}}
        echo '<input name="Senden" type="submit" value="Senden" /></form>';
        ?>

        Kommentar


        • #5
          danke
          Zuletzt geändert von phpnueling; 21.10.2006, 23:52.

          Kommentar


          • #6
            Du müsstest den Inhalt der einzelnen Textfelder in ein multiples oder wie das heißt array speichern
            1. Die ID
            2. Den Inhalt

            beides in ein array
            das sollte dann leicht wie die anderen arrays zu verarbeiten sein!

            Kommentar


            • #7
              Ich habe mal ne kleine Frage... wofür ist das @vor mysql_connect() ?
              -Am Anfang war das Wort-

              Ich habe fertig mit Abi ^^

              Kommentar


              • #8
                http://www.php.net/manual/de/languag...rorcontrol.php
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  Na toll ^^ also kann man diesen Operator zum Selbstbetrug nutzen ^^?
                  Find ich ehrlich gesagt ein bisschen blödsinnig sowas zu machen.

                  Aber danke
                  -Am Anfang war das Wort-

                  Ich habe fertig mit Abi ^^

                  Kommentar


                  • #10
                    nö das kann ganz praktisch sein, wenn man fehler selbst behandeln möchte (exceptions, etc.)
                    MfG
                    aim
                    Lies mich jetzt!
                    - OT-Tags-Liebhaber und BB-Code-Einrücker -

                    Kommentar


                    • #11
                      @aimbot

                      wo siehst du den zusammenhang zwischen shutup-op und eigenständiger
                      fehlerbehandlung z.B. durch exceptions ?


                      greets
                      (((call/cc call/cc) (lambda (x) x)) "Scheme just rocks! and Ruby is magic!")

                      Kommentar


                      • #12
                        naja beispiel:

                        PHP-Code:
                        [...]

                        $this->dbhandle = @mysql_connect($this->host ':' $this->port$this->user$this->pass$this->force_nc);

                        if (!
                        $this->handle) {
                            throw new 
                        dbase_exception('Fehler blabla');
                        }

                        [...] 
                        nicht jeder möchte z.b. die standardfehler ausgeben. war ja auch nur ein beispiel. man kann die shutup ops auch benutzen, wenn man bspw. lieber in eine logfile schreiben möchte, statt den fehler so auszugeben.
                        MfG
                        aim
                        Lies mich jetzt!
                        - OT-Tags-Liebhaber und BB-Code-Einrücker -

                        Kommentar

                        Lädt...
                        X