[PHP] anmeldeformular

Dieses Thema im Forum "Webentwicklung" wurde erstellt von JuTzI666, 19. Oktober 2007 .

Schlagworte:
Status des Themas:
Es sind keine weiteren Antworten möglich.
  1. 19. Oktober 2007
    anmeldeformular

    hallo RR'ler ich habe ne frage und zwar wie muss ich das machen, damit wenn ich auf den Submit button klicke, die anmeldung verschickt in die mysql db und dann ohne eine neue seite einfach das OK kommt, dass alles geklappt hat?

    Hier der Link wies aussieht: KLICK

    Code:
    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <link rel="stylesheet" type="text/css" href="css.css"/>
    <meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
    <title>Unbenanntes Dokument</title>
    <style type="text/css">
    <!--
    .Stil1 {
     font-size: 20px;
     font-weight: bold;
    }
    -->
    </style>
    </head>
    
    <body>
    <form action="" method="post">
    <table width="514" border="0" cellspacing="0" cellpadding="0">
     <tr>
     <td width="30">&nbsp;</td>
     <td width="454"><div align="center" class="Stil1">AnMeLdUnG</div></td>
     <td width="30">&nbsp;</td>
     </tr>
     <tr>
     <td>&nbsp;</td>
     <td></td>
     <td>&nbsp;</td>
     </tr>
     <tr>
     <td>&nbsp;</td>
     <td><div align="center">
     <table width="417" height="238" border="0" cellpadding="0" cellspacing="0">
     <tr>
     <td width="161">&nbsp;</td>
     <td colspan="2">&nbsp;</td>
     <td width="22">&nbsp;</td>
     </tr>
     <tr>
     <td>Name</td>
     <td colspan="2"><label>
     <input name="name" type="text" id="name" />
     </label></td>
     <td>&nbsp;</td>
     </tr>
     <tr>
     <td>Vorname</td>
     <td colspan="2"><input name="vorname" type="text" id="vorname" /></td>
     <td>&nbsp;</td>
     </tr>
     <tr>
     <td>Geb. Datum </td>
     <td colspan="2"><label>
     <select name="tag" id="tag">
     <option>01</option>
     <option>02</option>
     <option>03</option>
     <option>04</option>
     <option>05</option>
     <option>06</option>
     <option>07</option>
     <option>08</option>
     <option>09</option>
     <option>10</option>
     <option>11</option>
     <option>12</option>
     <option>13</option>
     <option>14</option>
     <option>15</option>
     <option>16</option>
     <option>17</option>
     <option>18</option>
     <option>19</option>
     <option>20</option>
     <option>21</option>
     <option>22</option>
     <option>23</option>
     <option>24</option>
     <option>25</option>
     <option>26</option>
     <option>27</option>
     <option>28</option>
     <option>29</option>
     <option>30</option>
     <option>31</option>
     </select>
     <select name="monat" id="monat">
     <option>Januar</option>
     <option>Februar</option>
     <option>M&auml;rz</option>
     <option>April</option>
     <option>Mai</option>
     <option>Juni</option>
     <option>Juli</option>
     <option>August</option>
     <option>September</option>
     <option>Oktober</option>
     <option>November</option>
     <option>Dezember</option>
     </select>
     <select name="jahr" id="jahr">
     <option>1991</option>
     <option>1990</option>
     <option>1989</option>
     <option>1988</option>
     <option>1987</option>
     <option>1986</option>
     <option>1985</option>
     <option>1984</option>
     <option>1983</option>
     <option>1982</option>
     </select>
     </label></td>
     <td>&nbsp;</td>
     </tr>
     <tr>
     <td>Natel Nr. </td>
     <td colspan="2"><input name="natelnr" type="text" id="natelnr" maxlength="10" /></td>
     <td>&nbsp;</td>
     </tr>
     <tr>
     <td>E-Mail Addy </td>
     <td colspan="2"><input name="email" type="text" id="email" /></td>
     <td>&nbsp;</td>
     </tr>
     <tr>
     <td>&nbsp;</td>
     <td colspan="2">&nbsp;</td>
     <td>&nbsp;</td>
     </tr>
     <tr>
     <td>Schon Mal Mitgemacht? </td>
     <td width="58"><label>
     JA
     <input type="radio" name="ja" value="radiobutton" />
     </label></td>
     <td width="176">NEIN
     <input type="radio" name="nein" value="radiobutton" /></td>
     <td>&nbsp;</td>
     </tr>
     <tr>
     <td>&nbsp;</td>
     <td colspan="2">&nbsp;</td>
     <td>&nbsp;</td>
     </tr>
     <tr>
     <td><label>
     <input type="submit" name="Submit" value="Go Nightmare" />
     </label></td>
     <td colspan="2"><input name="reset" type="reset" id="reset" value="Zur&uuml;cksetzen" /></td>
     <td>&nbsp;</td>
     </tr>
     </table>
     </div></td>
     <td>&nbsp;</td>
     </tr>
    </table>
    <p>&nbsp;</p>
    </form>
    </body>
    </html>
    
    vielen dank

    mfg JuTzI666
     
  2. 19. Oktober 2007
    AW: anmeldeformular

    Mhhh ganz ohne Refresh?

    Sonst mach doch :


    PHP:
    if(......) {

    echo 
    'Alles in Ordnung , Formular verschickt' ;
    exit();

    }
     
  3. 19. Oktober 2007
    AW: anmeldeformular

    hi,
    wie wärs mit...

    PHP:

    //Zuerst beim Formular als action die selbe Datei angeben.
    < form action = "anmeldung.php"  method = "post" >

    Und dann - am Besten ganz oben im Dokument - so einen Code einfügen:

    PHP:

    <?php 

    if(isset( $_POST )) {
        if (
    $_POST [ 'name' ] !=  '' ) {
        echo 
    'Daten werden eingetragen...' ;
            
    // Hier dann den mysql_query einfügen
                                                  
    }
                                }
    ?>

    Dann wird das Dokument zwar refresh't, aber danach sieht man wieder das Formular.


    lg
    Sn0wm4n

    ps: bei "if name != null" am besten alle nötigen felder hinzufügen. So wird direkt überprüft, ob die Felder ausgefüllt sind
     
  4. 20. Oktober 2007
    AW: anmeldeformular

    Hmmm also wenn du wirklich nicht willst, das die Seite neugeladen wird, dann bleibt dir nur die Möglichkeit das ganze mit Ajax zu übertragen.


    Beim klick auf den submit Button, würde man dann eine JavaScript Funktion aufrufen die die Daten aus dem Formular an eine php datei sendet, welche die daten dann in die Datenbank speichert, und dann ein "Ok" zurück gibt, welches die JS Funktion auffängt und als beispielsweise window.alert ausgibt.


    EDIT//
    Hab da mal folgende JavaScript Funktion geschrieben

    Code:
    
    function save_data() {
     var http = null;
     var url = "dein_php_script.php"; // Dein auswertendes php Script
     var arguments = "vorname=" + vorname + "&name=" + name; // Die Argumente
     
     
     if (window.XMLHttpRequest) {
     http = new XMLHttpRequest();
     } else if (window.ActiveXObject) {
     http = new ActiveXObject("Microsoft.XMLHTTP");
     }
     http.open("POST", url, false);
     http.onreadystatechange = data_sent; 
     http.setRequestHeader("Content-Type", "application/x-www-form-urlencoded");
     http.send( arguments );
    }
    
    Bei arguments wird der String zusammen gebastelt wie man ihn auch in URL's sieht
    name=wert&name2=wert2&name3=wert3.....
    Das wird dann im Hintergrund als POST Daten an das PHP Script gesendet, wo du die Daten nur noch wie gewohnt in die Datenbank speichern musst.

    Die Zeile http.onreadystatechange = data_sent; legt die Funktion fest, welche nach erfolgreichen Senden der Daten aufgerufen werden soll. In diesem fall wäre es die data_sent() Funktion.
    Innerhalb der Funktion kannst du dann mittels

    if (http.readyState == 4) {
    window.alert(http.responseText);
    }

    Die Ausgabe der php Datei anzeigen lassen, z.B erfolgsmeldungen bzw Fehlermeldungen
     
  5. 21. Oktober 2007
    AW: anmeldeformular

    Hey Glove, man merkt dass du dir Mühe gibst, aber verschieß dein Pulver jetzt noch nicht. Es gibt hier viel zu viele, die Ihren eigenen Verstand nicht gebrauchen wollen. Dieser Thread als als auch dein Script sind eigentlich Dinge die im WWW schon zig tausend fach disktutiert wurden. Es ist gut, dass du hilfst, vielleicht wäre es aber besser solchen Menschen dann eher Hilfe zur Selbsthilfe zu bieten ....

    PS: Ich persönlich mache mir nichtmehr die Mühe mich um das XHR per Hand zu kümmern, imho sind frameworks wie z.B. prototype dazu die bessere lösung.
     
  6. 21. Oktober 2007
    AW: anmeldeformular

    Ja kann schon sein, nur da in diesem Thread noch niemand das Stichwörtchen Ajax gebraucht hab, wollt ich da einfach mal was auf die Sprünge helfen xD

    Klar das stimmt, aber wenn man auf seiner Seite nur ein Formular hat, welches mit Ajax übertragen werden soll, ist ein Framework dafür recht überflüssig.
     
  7. 21. Oktober 2007
    AW: anmeldeformular


    Also sagen wir dochmal so, wer ein AJAX - Anmeldeformular hat, der wird auch noch mehr auf seiner Seite haben wo man noch mehr mit dem framework anfangen kann.
     
  8. 21. Oktober 2007
    AW: anmeldeformular

    prototype ajax request => Prototype API Documentation | Ajax (Deprecated URL)

    [x] done

    ~ closed ~
     
  9. Video Script

    Videos zum Themenbereich

    * gefundene Videos auf YouTube, anhand der Überschrift.