Mehrere Aktionen in Datenbank ausführen

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • 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>';
    ?>
    Last edited by smepal; 01-06-2006, 13:20.

  • #2
    danke
    Last edited by phpnueling; 21-10-2006, 23:52.

    Comment


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

      Comment


      • #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>';
        ?>

        Comment


        • #5
          danke
          Last edited by phpnueling; 21-10-2006, 23:52.

          Comment


          • #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!

            Comment


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

              Ich habe fertig mit Abi ^^

              Comment


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

                Comment


                • #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 ^^

                  Comment


                  • #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 -

                    Comment


                    • #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!")

                      Comment


                      • #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 -

                        Comment

                        Working...
                        X