Einmal eintragen anstatt mehrmals

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

  • Einmal eintragen anstatt mehrmals

    PHP-Code:
    $sql = "SELECT
            id,
            name,
            spiel,
            gewonnen           
         FROM                
             runde1 ORDER BY id"; 
        $result = mysql_query($sql) OR die(mysql_error());
        while($row = mysql_fetch_assoc($result)) 
        {
        $gewonnen = $row['gewonnen']. "";
        $id = $row['id']. "";
        $name = $row['name']. "";
        ?>
      <table width="200" bordercolor="#FFFFFF" bgcolor="#000000">
        <tr>
        <form name="los" method="post" action="">
          <td>
          <div align="left"><strong>
            <input name="id" type="text" value="<?php echo "$id";?>">
            <br>
            <?php echo "$name"?> <font color="#FF0000">Gewonnen:</font><?php echo "$gewonnen"?></strong></div>
          <input type="submit" name="submit" value="Gewonnen">
          </td>
          </form>
        </tr>
      </table>
    <?php
    if (isset($_POST['submit'])) {
    mysql_query("UPDATE runde1 SET gewonnen='".($gewonnen+1)."' WHERE id='$id'");    
     }
    }
    mysql_close($conn);
    ?>
    wenn ich den button drücke speichert das script überall gewonnen+1 anstatt nur bei dem die id richtig ist

  • #2
    Ich sehe es.
    Schließlich rufst du das UPDATE ja innerhalb der Schleife auf, die dir alle Datensätze ausgibt, was also wundert dich?
    Ich denke, also bin ich. - Einige sind trotzdem...

    Kommentar


    • #3
      PHP-Code:
      <input name="id" type="text" value="<?php echo "$id";?>">
      Da fehlt was
      ---------------
      ok, und die Schleife, soweit habe ich garnicht geguckt...
      Zuletzt geändert von Hoschi0815; 24.05.2005, 16:53.

      Kommentar


      • #4
        hab die schleife vor dem submit abgeschlossen jetzt funzt es aber nur bei der letzten id

        dann habe ich von hoschi das geändert (habe id="id") eingefügt

        aber selbst das funktioniert nicht

        Kommentar


        • #5
          wie sieht der Code bei dir denn jetzt aus?

          Kommentar


          • #6
            PHP-Code:
            $sql = "SELECT
                    id,
                    name,
                    spiel,
                    gewonnen           
                 FROM                
                     runde1 ORDER BY id"; 
                $result = mysql_query($sql) OR die(mysql_error());
                while($row = mysql_fetch_assoc($result)) 
                {
                $gewonnen = $row['gewonnen']. "";
                $name = $row['name']. "";
                ?>
              <table width="200" bordercolor="#FFFFFF" bgcolor="#000000">
                <tr>
                <form name="los" method="post" action="">
                  <td>
                  <div align="left"><strong>
                    <?php echo $row['id']. ". "; echo "$name"?> <font color="#FF0000">Gewonnen:</font><?php echo "$gewonnen"?></strong></div>
                  <input type="submit" name="submit" value="Gewonnen">
                  </td>
                  </form>
                </tr>
              </table>
            <?php
             
            }
            if (isset(
            $_POST['submit'])) {
            mysql_query("UPDATE runde1 SET gewonnen='".($gewonnen+1)."' WHERE id='$id'");    
            }
            mysql_close($conn);
            ?>

            Kommentar


            • #7
              Original geschrieben von Biffi
              PHP-Code:
                  <form name="los" method="post" action="">
                    <td>
                    <div align="left"><strong>
                      <?php echo $row['id']. ". "; echo "$name"?> <font color="#FF0000">Gewonnen:</font><?php echo "$gewonnen"?></strong></div>
                    <input type="submit" name="submit" value="Gewonnen">
                    </td>
                    </form>
              Wo übergibst du denn jetzt die id? So kann nur der letzte Datensatz geändert werden..

              Kommentar


              • #8
                wie kann ich denn die id übergeben?

                Kommentar


                • #9
                  PHP-Code:
                  <input type="hidden" name="id" value="<?php echo $row['id']; ?>">
                  Kannst natürlich auch type="text" machen

                  Kommentar


                  • #10
                    klappt zwar aber nun macht der alles auf 63 X_x
                    PHP-Code:
                    $sql = "SELECT
                            id,
                            name,
                            spiel,
                            gewonnen           
                         FROM                
                             runde1 ORDER BY id"; 
                        $result = mysql_query($sql) OR die(mysql_error());
                        while($row = mysql_fetch_assoc($result)) 
                        {
                        $gewonnen = $row['gewonnen']. "";
                        $name = $row['name']. "";
                        ?>
                      <table width="200" bordercolor="#FFFFFF" bgcolor="#000000">
                        <tr>
                        <form name="los" method="post" action="">
                          <td>
                          <div align="left"><strong>
                            <?php echo $row['id']. ". "; echo "$name"?> <font color="#FF0000">Gewonnen:</font><?php echo "$gewonnen"?>
                            <input type="hidden" name="id" value="<?php echo $row['id']; ?>">
                          </strong></div>
                          <input type="submit" name="submit" value="Gewonnen">
                          </td>
                          </form>
                        </tr>
                      </table>
                    <?php
                     
                    }
                    if (isset(
                    $_POST['submit'])) {
                    mysql_query("UPDATE runde1 SET gewonnen='".($gewonnen+1)."' WHERE id='$id'");    
                    }
                    mysql_close($conn);
                    ?>

                    Kommentar


                    • #11
                      Dann schau dir mal dein Formular an, und du wirst sehen, dass du $gewonnen auch nicht übergibst.
                      Und was machst du dann?

                      Kommentar


                      • #12
                        das gewonnen wird ja einfach nur +1 gemacht aber nur da wo die id=id ist

                        Kommentar


                        • #13
                          Dann musst du entweder das hier ändern:

                          Original geschrieben von Biffi

                          PHP-Code:
                          mysql_query("UPDATE runde1 SET gewonnen='".($gewonnen+1)."' WHERE id='$id'"); 
                          kleiner Hinweis: Update

                          Oder $gewonnen eben auch per Formularfeld übergeben.

                          Kommentar


                          • #14
                            lol danke

                            Kommentar

                            Lädt...
                            X