Avatar billede noob2003 Nybegynder
14. februar 2008 - 19:39 Der er 3 kommentarer og
1 løsning

mister data i indtastning felter ved validering af formular

jeg har en for der skal validere, men når den validere og der er fejl viser den ikke indtastet data i felterne, hvad gør jeg forkert.

---  kode start ---
<form NAME="Opret_bruger" id="form1" method="post" action="<?php $_SERVER['PHP_SELF'] ?>" />
<br /><br /><table width="500" border="0">
      <tr>
        <td colspan="2"><div class="style2" size="14" align="left"><?php echo ""._REGISTREDPLAYER.""; ?><br /><br /></div></td>
      </tr>
      <tr>
        <td><div class="style1" align="left"><?php echo ""._EMAIL.":"; ?></div></td>
        <td><input name="email" type="text" id="email" /></td>
        <td width="60" id="emailerror" align="left"></td>
      </tr>
      <tr>
        <td><div class="style1" align="left"><?php echo ""._RETYPEEMAIL.":"; ?></div></td>
        <td><input name="emailx" type="text" id="emailx" /></td>
        <td width="60" id="emailxerror" align="left"></td>
      </tr>
      <tr>
        <td><div class="style1" align="left"><?php echo ""._NAME.":"; ?></div></td>
        <td><input name="navn" type="text" id="navn" /></td>
        <td width="60" id="nickerror" align="left"></td>
      </tr>
      <tr>
        <td><div class="style1" align="left"><?php echo ""._PREFIX.":"; ?></div></td>
        <td><input name="tag" type="text" id="tag" /></td>
        <td width="60" id="tagerror" align="left"></td>
      </tr>
      <tr>
        <td><div class="style1" align="left"><?php echo ""._COUNTRY.":"; ?></div></td>
        <td align="left"><select name="country"><option value="">........................</option>
<option value="af">Afghanistan</option>
<option value="al">Albania</option>
<option value="dz">Algeria</option>
<option value="ad">Andorra</option>
<option value="ao">Angola</option>
<option value="ar">Argentina</option>
<option value="am">Armenia</option>

<option value="au">Australia</option>
<option value="at">Austria</option>
<option value="az">Azerbaijan</option>
<option value="bs">Bahamas</option>
<option value="bh">Bahrain</option>
<option value="bd">Bangladesh</option>
<option value="bb">Barbados</option>
<option value="by">Belarus</option>
<option value="be">Belgium</option>

<option value="bz">Belize</option>
<option value="bj">Benin</option>
<option value="bm">Bermuda</option>
<option value="bt">Bhutan</option>
<option value="bo">Bolivia</option>
<option value="ba">Bosnia-Herzegovina</option>
<option value="bw">Botswana</option>
<option value="br">Brazil</option>
<option value="bn">Brunei Darussalam</option>

<option value="bg">Bulgaria</option>
<option value="bf">Burkina Faso</option>
<option value="bi">Burundi</option>
<option value="kh">Cambodia</option>
<option value="cm">Cameroon</option>
<option value="ca">Canada</option>
<option value="cv">Cape Verde</option>
<option value="cf">Central African Republic</option>
<option value="td">Chad</option>

<option value="cl">Chile</option>
<option value="cn">China</option>
<option value="co">Colombia</option>
<option value="km">Comoros</option>
<option value="cd">Congo</option>
<option value="cr">Costa Rica</option>
<option value="hr">Croatia</option>
<option value="cu">Cuba</option>
<option value="cy">Cyprus</option>

<option value="cz">Czech Republic</option>
<option value="dk">Denmark</option>
<option value="dj">Djibouti</option>
<option value="do">Dominican Republic</option>
<option value="ec">Ecuador</option>
<option value="eg">Egypt</option>
<option value="sv">El Salvador</option>
<option value="gq">Equatorial Guinea</option>
<option value="er">Eritrea</option>

<option value="ee">Estonia</option>
<option value="et">Ethiopia</option>
<option value="fj">Fiji</option>
<option value="fi">Finland</option>
<option value="fr">France</option>
<option value="gf">French Guiana</option>
<option value="fp">French Polynesia</option>
<option value="ga">Gabon</option>
<option value="gm">Gambia</option>

<option value="ge">Georgia</option>
<option value="de">Germany</option>
<option value="gh">Ghana</option>
<option value="gi">Gibraltar</option>
<option value="gr">Greece</option>
<option value="gl">Greenland</option>
<option value="gp">Guadeloupe</option>
<option value="gt">Guatemala</option>
<option value="gn">Guinea</option>

<option value="gw">Guinea-Bissau</option>
<option value="gy">Guyana</option>
<option value="ht">Haiti</option>
<option value="va">Holy See</option>
<option value="hn">Honduras</option>
<option value="hk">Hong Kong</option>
<option value="hu">Hungary</option>
<option value="is">Iceland</option>
<option value="in">India</option>

<option value="id">Indonesia</option>
<option value="ir">Iran</option>
<option value="iq">Iraq</option>
<option value="ie">Ireland</option>
<option value="il">Israel</option>
<option value="it">Italy</option>
<option value="ci">Ivory Coast</option>
<option value="jm">Jamaica</option>
<option value="jp">Japan</option>

<option value="jo">Jordan</option>
<option value="kz">Kazakhstan</option>
<option value="ke">Kenya</option>
<option value="ki">Kiribati</option>
<option value="kp">Korea</option>
<option value="kr">Korea (Republic of)</option>
<option value="kw">Kuwait</option>
<option value="kg">Kyrgyzstan</option>
<option value="lv">Latvia</option>

<option value="lb">Lebanon</option>
<option value="ls">Lesotho</option>
<option value="lr">Liberia</option>
<option value="li">Liechtenstein</option>
<option value="lt">Lithuania</option>
<option value="lu">Luxembourg</option>
<option value="mo">Macau</option>
<option value="mk">Macedonia</option>
<option value="mg">Madagascar</option>

<option value="mw">Malawi</option>
<option value="my">Malaysia</option>
<option value="mv">Maldives</option>
<option value="ml">Mali</option>
<option value="mt">Malta</option>
<option value="mq">Martinique</option>
<option value="mr">Mauritania</option>
<option value="mu">Mauritius</option>
<option value="mx">Mexico</option>

<option value="md">Moldova</option>
<option value="mc">Monaco</option>
<option value="mn">Mongolia</option>
<option value="me">Montenegro</option>
<option value="ma">Morocco</option>
<option value="mz">Mozambique</option>
<option value="na">Namibia</option>
<option value="np">Nepal</option>
<option value="nl">Netherlands</option>

<option value="nc">New Caledonia</option>
<option value="nz">New Zealand</option>
<option value="ni">Nicaragua</option>
<option value="ne">Niger</option>
<option value="ng">Nigeria</option>
<option value="no">Norway</option>
<option value="pk">Pakistan</option>
<option value="pw">Palau</option>
<option value="ps">Palestinian Territories</option>

<option value="pa">Panama</option>
<option value="pg">Papua-New Guinea</option>
<option value="py">Paraguay</option>
<option value="pe">Peru</option>
<option value="ph">Philippines</option>
<option value="pl">Poland</option>
<option value="pt">Portugal</option>
<option value="pr">Puerto Rico</option>
<option value="ro">Romania</option>

<option value="ru">Russian Federation</option>
<option value="rw">Rwanda</option>
<option value="sm">San Marino</option>
<option value="sa">Saudi Arabia</option>
<option value="sn">Senegal</option>
<option value="yu">Serbia</option>
<option value="sc">Seychelles</option>
<option value="sl">Sierra Leone</option>
<option value="sg">Singapore</option>

<option value="sk">Slovakia</option>
<option value="si">Slovenia</option>
<option value="sb">Solomon Islands</option>
<option value="so">Somalia</option>
<option value="za">South Africa</option>
<option value="es">Spain</option>
<option value="lk">Sri Lanka</option>
<option value="sr">Suriname</option>
<option value="sz">Swaziland</option>

<option value="se">Sweden</option>
<option value="ch">Switzerland</option>
<option value="sy">Syrian Arab Republic</option>
<option value="tj">Tajikistan</option>
<option value="tz">Tanzania</option>
<option value="th">Thailand</option>
<option value="tg">Togo</option>
<option value="tt">Trinidad and Tobago</option>
<option value="tn">Tunisia</option>

<option value="tr">Turkey</option>
<option value="tm">Turkmenistan</option>
<option value="ug">Uganda</option>
<option value="ua">Ukraine</option>
<option value="ae">United Arab Emirates</option>
<option value="uk">United Kingdom</option>
<option value="us">United States</option>
<option value="uy">Uruguay</option>
<option value="uz">Uzbekistan</option>

<option value="ve">Venezuela</option>
<option value="vn">Vietnam</option>
<option value="ws">West Samoa</option>
<option value="ye">Yemen</option>
<option value="zm">Zambia</option>
<option value="zw">Zimbabwe</option></select></td>
        <td width="60" id="countryerror" align="left"></td>
      </tr>
      <tr>
        <td valign="top"><input type="submit" name="Submit" id="Submit" value="<?php echo""._SETUPUSER.""; ?>"  /></td>
        <td colspan="2" style="color:#FF0000">
            <?php
            function isValidEmail($email_address)
            {
              $regex = '/^[\w]{1,3}[\w\.\-_]*@[\w]{1,3}[\w\-_\.]*\.[\w]{2,6}$/i';
           
              return (preg_match($regex, $email_address));
            }
           
            $email = $_POST['email'];
            $emailx = $_POST['emailx'];
            $navn = $_POST['navn'];
            $tag = $_POST['tag'];
            $country = $_POST['country'];
           
            if(isset($_POST['Submit']))
            {
                echo '<br><br>&nbsp;&nbsp;<ul id="error">';
               
                    if(isValidEmail($email) == false || $email == "")
                        {
                            $error1 =FALSE;
                            $fejl = '<li>Der er fundet en fejl i din email!</li>';
                        }
                    else
                        {
                            $error1 =TRUE;
                        }
                    if($email != $emailx)
                        {
                            $error2 =TRUE;
                            $fejl .= '<li>Dine emails matcher ikke hinanden!</li>';
                        }
                    else
                        {
                            $error2 =FALSE;
                        }
                    if($_POST['navn'] == "")
                        {
                            $error3 =FALSE;
                            $fejl .= '<li>Der er fundet en fejl i dit navn!</li>';
                        }
                    else
                        {
                            $error3 =TRUE;
                        }
                    if($country == "........................" || $country == "")
                        {
                            $error4 =FALSE;
                            $fejl .= '<li>Du har ikke valgt noget land!</li>';
                        }
                    else
                        {
                            $error4 =TRUE;
                        }
                    if($error1 && $error2 && $error3 && $error4)
                        {
                            echo "Succes!";
}
                    else
                        {
                        echo $fejl;
                        }
                       
                echo '</ul>';
            }
           
           
            ?>
        </td>
    </tr>
</table>
</form>

--- kode slut ---
Avatar billede keysersoze Ekspert
14. februar 2008 - 20:11 #1
Når du validerer server-side er du nødt til selv at styre at formen skal huske indtastningerne - så indsæt dine variabel-deklareringer i toppen af siden og indsæt så værdierne på de enkelte felter med

value="dinvariabel"
Avatar billede noob2003 Nybegynder
14. februar 2008 - 21:16 #2
vil det sige alá <input name="emailx" type="text" id="emailx" value="$emailx" /></td>
Avatar billede noob2003 Nybegynder
15. februar 2008 - 00:40 #3
fandt ud af hvad du mente, smider du et svar ?
Avatar billede keysersoze Ekspert
16. februar 2008 - 09:37 #4
super - var lige lidt langsom om at melde tilbage :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester