изкачащ прозорец при грешки в регистрация

chaser

Registered
Опитвав се да направя като регистрираш в сайт при грешка в регистрацията например непопълнени полета да изкача прозорец и в него да прише каква е грешката и да има бутон за премахване на прозореца как ще стане това в php
ето и формата за регистрация


PHP:
<?php
include ("include/config.php");
include ("modules/login.php");
include ("common.php");
@$query = mysql_query("SELECT * FROM `users` WHERE session='$ses'"); 
@$red = mysql_num_rows($query); 
if ($red != NULL) { 
$my_id = mysql_result($query, "0", "id"); 
$my_ime = mysql_result($query, "0", "username"); 
} 
else { 
$a = rand(0,99); 
$b = rand(0,9); 
$random = "$a"."$b"; 
echo '
<form action="?" method="POST">
<table class="reg3" style="margin-top:210px; margin-left:auto; margin-right:auto;"  cellspacing="2" cellpadding="5">
<tr>
<td class="reg" align="center" colspan="2">Създай нов акаунт</td>
</tr>
<tr>
<td class="head" align="left"><p class="margin">User:</p></td>
<td class="lista" ><input type="text" size="20" maxlength="25" name="username" id="txt1" onkeyup="showHint(this.value)"/><br /><p><span id="txtHint"></span></p>
<p><font size="2pt" >Моля,въведете потребитлеско име не по-малко от 6 символа</font></p></td>
</tr>
<tr>
<td  class="head" align="left" >Password:</td>
<td  class="lista"><input type="password" name="password" onkeyup="EvalPwdStrength(document.forms[0],this.value);"/> 

<div id="pwdstrenght" style="display:none;">
<table border="0" width="268px" height="25px" >
<tr>
<td id="idSM1" class="pwdChkCon0" align="center" width="25%">
<span id="idSMT1" style="display: none;">Week</span>
</td>
<td id="idSM2" class="pwdChkCon0" align="center" width="25%">
<span id="idSMT0" style="display: none;"></span>
<span id="idSMT2" style="display: none;">Medium</span>
</td>
<td id="idSM3" class="pwdChkCon0" align="center" width="25%">
<span id="idSMT3" style="display: none;">Safe</span>
</td>
<td id="idSM4" class="pwdChkCon0" align="center" width="25%">
<span id="idSMT4" style="display: none;">Strong</span>
</td>
</tr>
</table>
</div>

</td>
</tr>
<tr>
<td class="hea" align="left">Repeat password:</td>
<td class="lista"><input type="password" name="password2"></td>
</tr>
<tr>
<td class="hea" align="left">Email:</td>
<td class="lista"><input type="text" name="email"></td>
</tr>
<tr>
<td class="heas" align="left">Country:</td>
<td class="lista">
<select name="country">
<option value="0">---</option>
<option value="1">Afghanistan</option>
<option value="2">Aland Islands</option>
<option value="3">Albania</option>
<option value="4">Algeria</option>
<option value="5">American Samoa</option>
<option value="6">Andorra</option>
<option value="7">Angola</option>
<option value="8">Anguilla</option>
<option value="9">Antarctica</option>
<option value="10">Antigua Barbuda</option>
<option value="11">Argentina</option>
<option value="12">Armenia</option>
<option value="13">Aruba</option>
<option value="14">Australia</option>
<option value="15">Austria</option>
<option value="16">AAzerbaijan</option>
<option value="17">Bahamas</option>
<option value="18">Bahrain</option>
<option value="19">Bangladesh</option>
<option value="20">Barbados</option>
<option value="21">Belarus</option>
<option value="22">Belgium</option>
<option value="23">Belize</option>
<option value="24">Benin</option>
<option value="25">Bermuda</option>
<option value="26">Bhutan</option>
<option value="27">Bolivia</option>
<option value="28">Bosnia Herzegovina</option>
<option value="29">Botswana</option>
<option value="30">Bouvet Island</option>
<option value="31">Brazil</option>
<option value="33">Brunei Darussalam</option>
<option value="34">Bulgaria</option>
<option value="35">Burkina Faso</option>
<option value="36">Burundi</option>
<option value="37">Cambodia</option>
<option value="38">Cameroon</option>
<option value="39">Canada</option>
<option value="40">Cape Verde</option>
<option value="41">Chad</option>
<option value="42">Chile</option>
<option value="43">China</option>
<option value="44">Colombia</option>
<option value="45">Comoros</option>
<option value="46">Congo</option>
<option value="47">Congo</option>
<option value="48">Cook Islands</option>
<option value="49">Costa Rica</option>
<option value="50">Croatia</option>
<option value="51">Cuba</option>
<option value="52">Cyprus</option>
<option value="53">Czech Republic</option>
<option value="54">Denmark</option>
<option value="55">Djibouti</option>
<option value="56">Dominica</option>
<option value="57">Dominican Republic</option>
<option value="58">Ecuador</option>
<option value="59">Egypt</option>
<option value="60">El Salvador</option>
<option value="61">Equatorial Guinea</option>
<option value="62">Eritrea</option>
<option value="63">Estonia</option>
<option value="64">Ethiopia</option>
<option value="65">Fiji</option>
<option value="66">Finland</option>
<option value="67">France</option>
<option value="68">French Guiana</option>
<option value="69">French Polynesia</option>
<option value="70">Gabon</option>
<option value="71">Gambia</option>
<option value="72">Georgia</option>
<option value="73">Germany</option>
<option value="74">Ghana</option>
<option value="75">Gibraltar</option>
<option value="76">Greece</option>
<option value="77">Greenland</option>
<option value="78">Grenada</option>
<option value="79">Guadeloupe</option>
<option value="80">Guam</option>
<option value="81">Guatemala</option>
<option value="82">Guernsey</option>
<option value="83">Guinea</option>
<option value="84">Guinea-Bissau</option>
<option value="85">Guyana</option>
<option value="86">Haiti</option>
<option value="87">Honduras</option>
<option value="88">Hong Kong</option>
<option value="89">Hungary</option>
<option value="90">Iceland</option>
<option value="91">India</option>
<option value="92">Indonesia</option>
<option value="93">Iran</option>
<option value="94">Iraq</option>
<option value="95">Ireland</option>
<option value="96">Isle of Man</option>
<option value="97">Israel</option>
<option value="98">Italy</option>
<option value="99">Ivory Coast</option>
<option value="100">Jamaica</option>
<option value="101">Japan</option>
<option value="102">Jersey</option>
<option value="103">Jordan</option>
<option value="104">Kazahstan</option>
<option value="105">Kenya</option>
<option value="106">Kiribati</option>
<option value="107">Kuwait</option>
<option value="108">Kyrgyzstan</option>
<option value="109">Laos</option>
<option value="110">Latvia</option>
<option value="111">Lebanon</option>
<option value="112">Lesotho</option>
<option value="113">Liberia</option>
<option value="114">Libyan</option>
<option value="115">Liechtenstein</option>
<option value="116">Lithuania</option>
<option value="117">Luxembourg</option>
<option value="118">Macao</option>
<option value="119">Macedonia</option>
<option value="120">Madagascar</option>
<option value="121">Malawi</option>
<option value="122">Malaysia</option>
<option value="123">Maldives</option>
<option value="124">Mali</option>
<option value="125">Malta</option>
<option value="126">Martinique</option>
<option value="127">Mauritania</option>
<option value="128">Mauritius</option>
<option value="129">Mayotte</option>
<option value="130">Mexico</option>
<option value="131">Micronesia</option>
<option value="132">Moldova</option>
<option value="133">Monaco</option>
<option value="134">Mongolia</option>
<option value="135">Montserrat</option>
<option value="136">Morocco</option>
<option value="137">Mozambique</option>
<option value="138">Myanmaro</option>
<option value="139">Namibia</option>
<option value="140">Nauru</option>
<option value="141">Nepal</option>
<option value="142">Netherlands</option>
<option value="143">New Caledonia</option>
<option value="144">New Zealand</option>
<option value="145">Nicaragua</option>
<option value="146">Niger</option>
<option value="147">Nigeria</option>
<option value="148">Niue</option>
<option value="149">Norfolk Island</option>
<option value="150">North Korea</option>
<option value="151">Norway</option>
<option value="152">Oman</option>
<option value="153">Organization</option>
<option value="154">Pakistan</option>
<option value="155">Palau</option>
<option value="156">Panama</option>
<option value="157">Paraguay</option>
<option value="158">Peru</option>
<option value="159">Philippines</option>
<option value="160">Pitcairn</option>
<option value="161">Poland</option>
<option value="162">Portugal</option>
<option value="163">Puerto Rico</option>
<option value="164">Qatar</option>
<option value="165">Reunion</option>
<option value="166">Romania</option>
<option value="167">Russia</option>
<option value="168">Rwanda</option>
<option value="169">Saint Helena</option>
<option value="170">Saint Lucia</option>
<option value="171">Samoa</option>
<option value="172">San Marino</option>
<option value="173">Saudi Arabia</option>
<option value="174">Senegal</option>
<option value="175">Serbia</option>
<option value="176">Seychelles</option>
<option value="177">Sierra Leone</option>
<option value="178">Singapore</option>
<option value="179">Slovakia</option>
<option value="180">Slovenia</option>
<option value="181">Solomon Islands</option>
<option value="182">Somalia</option>
<option value="183">South Africa</option>
<option value="184">South Korea</option>
<option value="185">Spain</option>
<option value="186">Sri Lanka</option>
<option value="187">Sudan</option>
<option value="188">Suriname</option>
<option value="189">Swaziland</option>
<option value="190">South Africa</option>
<option value="191">South Korea</option>
<option value="192">Sri Lanka</option>
<option value="193">Sudan</option>
<option value="194">Suriname</option>
<option value="195">Swaziland</option>
<option value="196">Sweden</option>
<option value="197">Switzerland</option>
<option value="198">Taiwan</option>
<option value="199">Tajikistan</option>
<option value="200">Timor-Leste</option>
<option value="201">Thailand</option>
<option value="202">Togo</option>
<option value="203">Tokelau</option>
<option value="204">Tonga</option>
<option value="205">Trinidad & Tobago</option>
<option value="206">Tunisia</option>
<option value="207">Turkey</option>
<option value="208">Turkmenistan</option>
<option value="209">Tuvalu</option>
<option value="210">Uganda</option>
<option value="211">Ukraine</option>
<option value="212">Uruguay</option>
<option value="213">Uzbekistan</option>
<option value="214">Vanuatu</option>
<option value="215">Venezuela</option>
<option value="216">Vietnam</option>
<option value="217">Yemen</option>
<option value="218">Zambia</option>
<option value="219">Zimbabwe</option>
</select>
</td>
</tr>
<tr>
<td class="header1" align="left"><p class="margin">Security Code:</p></td>
<td class="lista" ><input id="security_code" name="security_code" type="text" /></td>
</tr>
<tr>
<td class="header1" align="left"></td>
<td class="lista" ><img src="CaptchaSecurityImages.php?width=100&height=40&characters=5" /></td>
</td>
</tr>
</div>
<tr>
<td class="hea" align="left"> </td>
<td class="hea"><input type="submit" name="submit" value="Регистрирай ме!"/></td>
</tr>
</table>
</form>
';
} 
?>
<?php
if (isset($_POST["submit"])) {
if (!empty($_POST["username"])) $username = htmlspecialchars($_POST["username"]);
else $errMsg = "Ìîëÿ âúâåäåòå ïîòðåáèòåë!<br />"; 
if (!empty($_POST["password"])) $password = htmlspecialchars($_POST["password"]);
else $errMsg = "Ìîëÿ âúâåäåòå ïàðîëà!<br />";
if (!empty($_POST["email"])) $email = htmlspecialchars($_POST["email"]);
else $errMsg = "<table align='center'><tr><td>Ìîëÿ âúâåäåòå å-ìàéë!</td></tr></table><br />";
if (strlen($_POST['password']) < 6) $errMsg = "<table align='center'><tr><td></td></tr></table><br />";
if (strlen($_POST['username']) < 6) $errMsg = "<table align='center'><tr><td>Ïîòðåáèòåëñêîòî âè èìå å òâúðäå êúñî!</td></tr></table><br />";
if (empty($errMsg)) {


$chek2 = mysql_query("SELECT * FROM `users` WHERE `email`='$email'")or die(mysql_error()); //ïðîâåðêà äà ëè åìàéëà å èçïîëçâàí
$chek2 = mysql_num_rows($chek2);
if ($chek2=='1') {
echo 'Òîçè åìàéë âå÷å å áèë èçïîëçàí îò äðóã ïîòðåáèòåë!'; //Èçêàðâà ðåçóëòàòà çàùîòî âå÷å èìà òàêúâ åìàéë
}

else {
$ip = ip2long($_SERVER['REMOTE_ADDR']);
$level = "1";
$password = md5($password);

$insert = mysql_query("INSERT INTO users(username, password, email, ip, level) VALUES('$username', '$password', '$email', '$ip', '$level')")or die(mysql_error());
echo 'Çäðàâåé <b>' . $username . '</b>! Ðåãèñòðàöèÿòà å óñïåøíà!';
echo ("<meta http-equiv=\"refresh\" content=\"3; url=index.php\">");
}}
else
echo $errMsg;
mysql_close();
}
echo ('
</center>');
?>
 
знам това но изкам в този прозорец с javascrip да се вгради php за да може да си извеждат грешките при пегистрация но как се прави това се питам намериш урици за такива прозорци но те не ми помагат
 
Написал си, че искаш да ти проверява дали е попълнено полето. Прави се с джаваскрипт, ето ти примерен код за валидиране на поле:

[js]<script language="JavaScript" type="text/javascript">


function isEmpty(strfield1, strfield2, strfield3) {


//сменяш си "field1, field2 and field3" с имената на полетата, които искаш да валидираш
strfield1 = document.forms[0].field1.value
strfield2 = document.forms[0].field2.value
strfield3 = document.forms[0].field3.value


if (strfield1 == "" || strfield1 == null || !isNaN(strfield1) || strfield1.charAt(0) == ' ')
{
alert("\"Поле 1\" е задължително.\nМоля попълнете го и опитайте пак.")
return false;
}


if (strfield2 == "" || strfield2 == null || strfield2.charAt(0) == ' ')
{
alert("\"Поле 2\" е задължително.\nМоля попълнете го и опитайте пак.")
return false;
}

if (strfield3 == "" || strfield3 == null || strfield3.charAt(0) == ' ')
{
alert("\"Поле 3\" е задължително.\nМоля попълнете го и опитайте пак."")
return false;
}
return true;
}


//функция дето проверява и-мейл адрес
function isValidEmail(strEmail){
validRegExp = /^[^@]+@[^@]+.[a-z]{2,}$/i;
strEmail = document.forms[0].email.value;


if (strEmail.search(validRegExp) == -1)
{
alert('Нужен е реален и-мейл адрес.\nМоля попълнете и опитайте пак');
return false;
}
return true;
}


function check(form)){
if (isEmpty(form.field1)){
if (isEmpty(form.field2)){
if (isEmpty(form.field3)){
if (isValidEmail(form.email)){
return true;
}
}
}
}
return false;
}

</script>[/js]

Във <form> тага си добавяш това onsubmit="return check(this);" и не забравай на всички <input> полета да им зададеш уникално име (name) което после заменяш в JS-то обяснил съм къде.
 

Горе