Button will nicht ins if...

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

  • Button will nicht ins if...

    Hi, hab da (mal wieder ) ein problem.....

    hab folgenden code:

    PHP-Code:
    while (list ($id$topic$datum$news$zeit$zeitstempel) = mysql_fetch_row ($result)) {

    print 
    "
           <table border = 1 width =\"690\">
            <tr>
             <th width=\"500px\" align=\"left\">
    $topic </th>
             <th align=\"right\">
    $datum || $zeit <input type=\"checkbox\" name=\"reset\" value=\"yes\"></th>
            </tr>
            <tr>
             <td colspan=\"2\">
    $news</td>
            </tr>
           </table>
        <br>
    "
    ;
    }

    print 
    "
           <table border = 1 width =\"690\">
            <tr>
             <td  align=\"right\"><input name=\"delete\" type=\"submit\" value=\"Löschen\" class=\"delete\"></td>
            </tr>
           </table>
        <br>
    "
    ;

    if (isset(
    $_POST['delete'])){
              if ( 
    $reset == 'yes' ) {
              
    $query3 "delete from $table2 where id = $id";
              
    mysql_query($query3);
              
    header('location: index4.php');
              }


    alles was vor dem ersten print kommt funktioniert einwandfrei.
    nur der inhalt des zweiten prints will nicht wies soll, und ins if() geht er garnet.....

  • #2
    Re: Button will nicht ins if...

    Original geschrieben von Eat_my_Shortz
    nur der inhalt des zweiten prints will nicht wies soll
    <extreme_geduld_modus>
    und das heisst ...?
    </extreme_geduld_modus>

    und ins if() geht er garnet.....
    geheimtipp: das ist idR. ein anzeichen dafür, dass die bedingung nicht erfüllt ist.
    I don't believe in rebirth. Actually, I never did in my whole lives.

    Kommentar


    • #3
      nunja die bedingung ist, das man auf den button klickt, und ich denk ich ahb das schon mindestens 1000 mal erfüllt ^^

      EDIT:

      nunja das zweite print enthält nur einen button, der, wenn ich darauf klicke einfach nicht funktioniert....

      eigentlich sollte dadurch ins if gewechselt werden und anschließend geprüft werden, ob eine checkbox gesetzt ist, und wenn ja dann soll an entsprechender eintag aus der db gelöscht werden

      Zuletzt geändert von Eat_my_Shortz; 04.03.2004, 20:20.

      Kommentar


      • #4
        Original geschrieben von Eat_my_Shortz
        eigentlich sollte dadurch ins if gewechselt werden
        die in solchen fällen obligatorische kontrollausgabe des $_POST-arrays mittels print_r() hast du natürlich bereits durchgeführt, um zu schauen, was für post-daten in deinem script ankommen ...?
        I don't believe in rebirth. Actually, I never did in my whole lives.

        Kommentar


        • #5
          ich bekomme kein ergebnis, da der button ja nix macht, nur weiß ich nicht
          wieso er nix macht.....

          achja und, natürlich bin ich schon auf die idee gekommen ^^

          etwas weiter open ist schonmal eine if funktion, welche auf
          buttonklick daten in die db schreibt, dort bekomme ich auch ein ergebnis:
          Array ( [newtopic] => as [newnews] => sa [submit] => Eintragen )


          bei dem fehlerhaften button allerdings kommt nur: Array()

          Kommentar


          • #6
            Original geschrieben von Eat_my_Shortz
            ich bekomme kein ergebnis, da der button ja nix macht, nur weiß ich nicht wieso er nix macht.....
            sieht denn der erzeugte HTML-code einigermaßen korrekt aus?

            (und steht dein button auch innrerhalb eines formulars ...?)
            I don't believe in rebirth. Actually, I never did in my whole lives.

            Kommentar


            • #7
              Das is die gesammte seite, ich weiß nicht ob ich den button vllt falsch angebracht habe....

              PHP-Code:
              <?php

              include ("mysql_con.php");
              $db_conn mysql_connect("$db_server","$db_user","$db_pass") or die (mysql_error());
              mysql_select_db("$db_base") or die ("db sel fail");

              $aktdatum date("d.m.Y");   // aktuelles datum
              $zeitstempel time();       // timestamp
              $aktzeit date("H:i:s",$zeitstempel);    // aktuelle Zeit

              ?>
                    <form name="writenewsform" method="post" >
                     <table border = 1 width ="690">
                      <tr>
                       <td width="400px" align="left"><input type="Text" name="newtopic" size="79"></td>
                       <td width="400px" align="right" ><?php print "$aktdatum || $aktzeit"?></td>
                      </tr>
                      <tr>
                       <td colspan="2"><textarea name="newnews" cols="80" rows="3" wrap="soft"></textarea></td>
                      </tr>
                      <tr>
                       <td align="right" colspan="2"><input name="submit" type="submit" value="Eintragen" class="submit"></td>
                      </tr>
                     </table>
                    </form>
                  <br><br>

              <?php
              if (isset($_POST['submit'])) {
              $query "INSERT INTO $table2 (id,topic,datum,news,zeit,zeitstempel) VALUES ('%','" $_POST['newtopic'] . "','$aktdatum','" $_POST['newnews'] . "','$aktzeit','$zeitstempel')";
              mysql_query($query,$db_conn)or die(mysql_error());
              header('location: index4.php');
              }

              $query2 "SELECT * FROM $table2 ORDER BY 'zeitstempel' DESC";
              $result mysql_query($query2);

              while (list (
              $id$topic$datum$news$zeit$zeitstempel) = mysql_fetch_row ($result)) {

              print 
              "
                     <table border = 1 width =\"690\">
                      <tr>
                       <th width=\"500px\" align=\"left\">
              $topic </th>
                       <th align=\"right\">
              $datum || $zeit <input type=\"checkbox\" name=\"cb[$id]\" value=\"yes\"></th>
                      </tr>
                      <tr>
                       <td colspan=\"2\">
              $news</td>
                      </tr>
                     </table>
                  <br>
              "
              ;
              }




              print 
              "
                     <table border = 1 width =\"690\">
                      <tr>
                       <td  align=\"right\"><input name=\"delete\" type=\"submit\" value=\"Löschen\" class=\"delete\"></td>
                      </tr>
                     </table>
                  <br>
              "
              ;

              if (isset(
              $_POST['delete'])){
                        if ( 
              $reset == 'yes' ) {
                        
              $query3 "delete from $table2 where id = $id";
                        
              mysql_query($query3);
                        
              header('location: index4.php');
                        }
              }

              Kommentar


              • #8
                Original geschrieben von Eat_my_Shortz
                Das is die gesammte seite, ich weiß nicht ob ich den button vllt falsch angebracht habe....
                hast du, und zwar derart, wie ich bereits vermutet hatte:

                dein delete-button steht ausserhalb des formulars - in HTML zwar erlaubt, aber eine wirkung im sinne des abschicken eines formulars kannst du dann natürlich nicht erwarten.

                und des weiteren hat dein formular gar keine action, also weiss ich nicht, wie da überhaupt irgendetwas irgendwohin geschickt werden sollte ...
                I don't believe in rebirth. Actually, I never did in my whole lives.

                Kommentar


                • #9
                  wie ich sagte, erste form, sowie die ersten 2 querys und das erste form funktionieren einwandfrei

                  das form is dazu da news in die db einzutragen, was es auch macht, unter dem form werden die news aufgelistet, welche bereits in der db sind.

                  dort wollte cih checkboxen hinzufügen und am ende einen button, welcher alle gecheckten news löscht....

                  alles außer der button funktioniert einwandfrei, auch der button, welcher das geschriebene in dei db einträgt.

                  Kommentar


                  • #10
                    hmm,

                    <extreme_geduld_modus>
                    liest du eigentlich unsere antworten?

                    dein delete-button steht ausserhalb des formulars - in HTML zwar erlaubt, aber eine wirkung im sinne des abschicken eines formulars kannst du dann natürlich nicht erwarten.

                    und des weiteren hat dein formular gar keine action, also weiss ich nicht, wie da überhaupt irgendetwas irgendwohin geschickt werden sollte ...
                    Die Zeit hat ihre Kinder längst gefressen

                    Kommentar


                    • #11
                      du ließt wohl nicht meine....



                      wie ich sagte, erste form, sowie die ersten 2 querys und das erste form funktionieren einwandfrei
                      EDIT:

                      ich hatte im ersten form mal eine action, nur probeweise, anschließend ging das komplette skript nicht mehr...



                      das was cih schreibe gehört ja nicht zu dem ersten form, sondern zu der table etwas weiter unten, oder sollte cih aus dieser ein form machen?

                      ich ahb nun ma die table geändert, und er gibt dennoch kein true zurück wenn ich den button drücke....

                      PHP-Code:
                      print "
                             <table border = 1 width =\"690\">
                              <tr>
                               <th width=\"500px\" align=\"left\">
                      $topic</th>
                               <th align=\"right\">
                      $datum || $zeit <input name=\"delete\" type=\"submit\" value=\"Löschen\" class=\"delete\"></th>
                              </tr>
                              <tr>
                               <td colspan=\"2\">
                      $news</td>
                              </tr>
                             </table>
                          <br>
                      "
                      ;
                      }

                          if (isset(
                      $_POST['delete']))
                          {
                          
                      print_r();
                          
                      $query3 "delete * from $table2 where id = $id";
                          
                      mysql_query($query3);
                          
                      header('location: news.php');
                          }

                      ?> 
                      wenn cih eine elseangabe einschließe wird diese sofort ausgeführt, auch ohne das der button geklickt wird.

                      Kommentar


                      • #12
                        hab nun ne ausgabe bei print_r() : Array ( [48] => yes )
                        48 bezieht sich auf die id, wie kann ich nun die if klausel
                        gestalten, auf das die ausgewählte id zum löschen verwand wird?

                        EDIT:

                        so sieht z.Zt mein query aus:
                        delete * from news_db WHERE id IN ('yes')'Array ( [43] => yes )



                        Zuletzt geändert von Eat_my_Shortz; 04.03.2004, 22:38.

                        Kommentar


                        • #13
                          PHP-Code:

                          //html technich sehe ich kein anfang und end <form> tag
                          print "
                                 <table border = 1 width =\"690\">
                                  <tr>
                          //typ submit braucht kein value
                                   <td  align=\"right\"><input name=\"delete\" type=\"submit\" value=\"Löschen\" class=\"delete\"></td>
                                  </tr>
                                 </table>
                              <br>
                          "
                          ;

                          if (isset(
                          $_POST['delete'])){
                                    if ( 
                          $reset == 'yes' ) {
                                    
                          $query3 "delete from $table2 where id = $id";
                                    
                          mysql_query($query3);
                                    
                          header('location: index4.php');
                                    }


                          PHP-Code:
                          //muster
                          <form action="datei.php" method="post">
                          <
                          input type="hidden" name="id" value="halt_die_id">
                          <
                          input type="hidden" name="delete" value="loeschen">
                          <
                          input type="submit" value="Abschicken">
                          </
                          form>

                          if (!empty(
                          $_POST['delete'])){
                                    if ( 
                          $_POST['delete'] == "loeschen" ) {
                                    
                          $query3 "delete from $table2 where id = '".$_POST['id']."'";
                                    
                          mysql_query($query3);
                                    
                          header('location: index4.php');
                                    }

                          mfg
                          marc75

                          <Platz für anderes>

                          Kommentar

                          Lädt...
                          X