Mehrere Updates auf einmal

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

  • Mehrere Updates auf einmal

    Hallo, ich bin ganz neu hier und habe mal eine Frage zu mehreren Updates gleichzeitig. Habe schon die Suche benutzt und auch was gefunden, aber bei mir will das nicht so...
    Was ich gerne möchte:
    Eine Auflistung aller Datenbankeinträge mit dem jeweils vorhandenen Preis. Dieser Preis steht als "value" in einem Eingabefeld und kann (soll) geändert werden, und anschließend sollen alle Einträge auf einmal geändert werden. Jeder Datenbankeintrag hat eine ID die hier im Beispiel in den eckigen Klammern steht. Die Auflistung funktioniert, nur die Aktualisierung nicht.

    Das ist der HTML-Code der Eingabeseite:

    <tr>
    <td> Bayern Junge </td>
    <td> 711-010 </td>
    <td> <input name="price[333]" type="text" value="2.35" size="8">
    </td>
    </tr>


    Das ist das Eingabescript:

    PHP Code:
    $preis $_POST['preis'];
    $verbindung mysql_connect ($host_value$user_value$password_value);
            if (! 
    $verbindung
                  {
                    echo 
    "Es besteht zur Zeit keine Datenbankverbindung!";
                         exit;
                  }
            else         
                  {
                      
    mysql_select_db("$dbname_value");

       foreach(
    $_POST as $key => $price){
            
    $befehl "UPDATE t_article set $preis = $price WHERE id = $key";
            
    mysql_query($befehl);
    }

    Die Variable $preis existiert deshalb, weil für die Artikel bis zu 7 unterschiedliche Preise angegeben werden können (je nach Land).


    Danke für eure geschätzte Hilfe
    Last edited by cherry; 13-01-2006, 08:39.

  • #2
    - lass dir $befehl mal mit echo ausgeben
    - ... or die(mysql_error()) hilft immer
    Kissolino.com

    Comment


    • #3
      Hallo,
      Habe die Ausgabe mal verändert, da er völlig wirres Zeug gebracht hat.
      Die Eingabe erfolgt jetzt so:

      foreach($_POST['name'] as $id => $name) {
      $sql = "UPDATE t_article SET $preis = '{$_POST['price'][$id]}' WHERE id = $id";
      mysql_query($sql);
      }}

      Das funktioniert jetzt, das mit echo für die Variablen ist immer wieder gut, aber ich denke leider zu selten daran.. DANKE dir!

      Ein kleines Problemchen habe ich noch. Es kann ja sein das anstatt 1.25 der Betrag 1,25 eingegeben wird, also mit Komma. Bisher wandle ich das so um:

      PHP Code:
      $porto2 ereg_replace(",""."$porto2b); 
      Wo kann ich das denn in diesem Eingabescript einbauen?

      Comment


      • #4
        innerhalb des foreach() { } ... ausserdem sollte str_replace schneller und ausreichend sein als ereg
        Kissolino.com

        Comment


        • #5
          Freitag der 13., weiter sag`ich nichts.......

          PHP Code:
          foreach($_POST['name'] as $id => $name) {
          $sql "UPDATE t_article SET $preis = '{$_POST['price'][$id]}' WHERE id = $id";
          mysql_query($sql);
          }} 
          Wie baue ich da das

          PHP Code:
          ereg_replace(",""."$price); 
          ein???
          Es soll der ankommende Preis, wenn "," gesetzt ist, in einen "." umgewandelt werden.

          Comment

          Working...
          X