problem mit db-update innerhalb einer while schleife..

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

  • problem mit db-update innerhalb einer while schleife..

    es geht um folgenden code:

    PHP-Code:
    $bestellungen mysql_query("SELECT * FROM auftraege 
    WHERE kdnr = '
    $kdnr' ORDER BY datum DESC");

    //bestellungen
    echo '
    <table border="1" cellpadding="0" cellspacing="0"
    style="border-collapse: collapse" bordercolor="#111111" width="543">
      <tr>
        <td width="541" colspan="5"><b>Bestellungen</b></td>
      </tr>
      <tr>
        <td width="68" align="center">Datum</td>
        <td width="99" align="center">Auftragsnummer</td>
        <td width="124" align="center">Service-Rubrik</td>
        <td width="121" align="center">Auftrags-Status</td>
        <td width="131" align="center">Ändern</td>
      </tr>
      <tr>'
    ;
      while(
    $row2 mysql_fetch_object($bestellungen)) {
      
      
    $timestamp $row2->datum;
      
    $Jahr substr($timestamp,0,4);
      
    $Monat substr ($timestamp,4,2);
      
    $Tag substr ($timestamp,6,2);
      
    $Std substr ($timestamp,8,2);
      
    $Min substr ($timestamp,10,2);
      
    $Sec substr ($timestamp,12,2); 
      
      
    $status $HTTP_POST_VARS["status"];
     
      if(
    $Send) {
    $auftrag "UPDATE auftraege SET status = '$status
    WHERE `auftragsnr` = '
    $row2->auftragsnr' && `kdnr` = '$kdnr'";
    mysql_query($auftrag);
    echo 
    '<meta http-equiv="refresh" content="0; URL=">';
    }
      
      echo 
    ' <td>'.$Tag.'.'.$Monat.'.'.$Jahr.'</td>
        <td>'
    .$row2->auftragsnr.'</td>
        <td>'
    .$row2->service.'</td>
        <td>'
    .$row2->status.'</td>
        <td><form method="POST">
        
        <select size="1" name="status">
    <option selected>neuer Auftrag</option>
    <option>in bearbeitung</option>
    <option>abgelehnt</option>
    <option>abgeschlossen</option>
    </select><input type="submit" value="ok" name="Send"></td></form></tr>'
    ;
      }
      echo 
    '</table>';
    //bestellungen ende

    mein problem ist das der status immer bei allen aufgelisteten bestellungen geupdatet wird..
    er soll natürlich aber nur bei dem geupdatet werden bei dem man das auch ausgewählt hat..
    hat jemand nen denkansatz wie ich das lösen könnte ?

    hatte das problem schonmal mit ner checkbox liste wo ichs dann lösen konnte..
    aber diesmal sinds leider keine checkboxen..
    bisher sehen meine versuche so aus:

    PHP-Code:
      if($Send) {
      
      
    $kr implode(',',$kdnr);
      
    $an implode(',',$row2->auftragsnr);
      
    $auftrag "UPDATE auftraege 
            SET status = '
    $status' WHERE `auftragsnr` IN ($an) && `kdnr` IN ($kr)";
    mysql_query($auftrag) or die ( mysql_error() );
    //echo '<meta http-equiv="refresh" content=1"; URL=">';
    }
      
      echo 
    ' <td>'.$Tag.'.'.$Monat.'.'.$Jahr.'</td>
        <td>'
    .$row2->auftragsnr.'</td>
        <td>'
    .$row2->service.'</td>
        <td>'
    .$row2->status.'</td>
        <td><form method="POST">
        
        <select size="1" name="status">
    <option selected>neuer Auftrag</option>
    <option>in bearbeitung</option>
    <option>abgelehnt</option>
    <option>abgeschlossen</option>
    </select><input type="submit" value="ok" name="Send"></td></form></tr>'
    ;
      }
      echo 
    '</table>'
    ps.: jeder hat mal klein angefangen

  • #2
    hab das problem gelöst..

    hier ein paar auzüge der lösung:

    PHP-Code:
      if($Send) {
      
      
      
    $status $_POST['status'];  
      
    $dt implode(',',$_POST['dt']);
      
    $kn implode(',',$_POST['kn']);
      
    $an implode(',',$_POST['an']);
        
    $auftrag "UPDATE auftraege 
            SET status = '
    $status', datum = '$dt' WHERE `auftragsnr` = '$an' && `kdnr` = '$kn'";
    mysql_query($auftrag) or die ( mysql_error() );

    und
    PHP-Code:
    echo ' <td>'.$Tag.'.'.$Monat.'.'.$Jahr.'</td>
        <td>'
    .$row2->auftragsnr.'</td>
        <td>'
    .$row2->service.'</td>
        <td>'
    .$row2->status.'</td>
        <td><form method="POST">
        
        <input type="hidden" name="an[]" size="1" value="'
    .$row2->auftragsnr.'">
        <input type="hidden" name="kn[]" size="1" value="'
    .$kdnr.'">
        <input type="hidden" name="dt[]" size="1" value="'
    .$row2->datum.'">
        <select size="1" name="status">
    <option selected>neuer Auftrag</option>
    <option>in bearbeitung</option>
    <option>abgelehnt</option>
    <option>abgeschlossen</option>
    </select><input type="submit" value="ok" name="Send"></td></form></tr>'

    vllt hilts ja nem andern au weiter

    mfg
    ps.: jeder hat mal klein angefangen

    Kommentar

    Lädt...
    X