PDA

View Full Version : خطای کد php&mysql



ghola1364
یک شنبه 18 فروردین 1387, 11:35 صبح
سلام می شه کمکم کنید اشتباه این کد رو می گین وقتی دکمه sendزده می شه در صورتی که inputها کامل پر هست باز error خالی بود می ده و در دیتابیس چیزی ذخیره نمی شه

[CODE]
[PHP]
<?php
$year=2008;
$mon=5;
$day=30;

$theTime=mktime(0,0,0,$mon,$day,$year);
if(time()>$theTime){
echo "time out site";
exit();
}
?>
<?php
session_start();if(isset($_SESSION['Pageviews'])) $_SESSION['Pageviews']=$_SESSION['Pageviews']+1;
else $_SESSION['Pageviews']=1;echo "Page views=". $_SESSION['Pageviews'];
?>
<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns="

ghola1364
یک شنبه 18 فروردین 1387, 11:48 صبح
<td height="372" width="591">

&nbsp;&nbsp;first name:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="text" name="firstname" id="firstname" value="" size="23"><br>
&nbsp;&nbsp;last name:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="text" name="lastname" id="lastname" value="" size="23"><br>
&nbsp;&nbsp;fathername:&nbsp;&nbsp;&nbsp;
<input type="text" name="fathername" id="fathername" value="" size="23" ><br>
&nbsp;&nbsp;shenasname:&nbsp;&nbsp;
<input type="text" name="shenasname" id="shenasname" value="" size="23" ><br>
&nbsp;&nbsp;Address:&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<input type="text" name="address" id="address" value="" size="23" ><br>
&nbsp;&nbsp;phonnumber:&nbsp;
<input type="text" name="phonnumber" id="phonnumber" value="" size="23" ><br>
&nbsp;<input type="submit" name="send" id="send" value="send" >
<input type="submit" name="cancel" id="cancel" value="cancel" >
</td></form><td width="54" class="white8" dir="rtl" height="33">



&nbsp;<tr>
<td class="white8" dir="rtl" colspan="2">&nbsp;</td>
</tr>
<tr>
<td height="3" colspan="2"></td>
</tr>
</table></form>
<td></td>
</table>
</p>
</body>
</html>

ghola1364
یک شنبه 18 فروردین 1387, 11:49 صبح
<?php
$link = mysql_connect("localhost","root","") or die('error');
$link=mysql_select_db("pers", $link);
//Check for send button clicked ...
$error = 0;
if($firstname == '')
{
echo ' <script>alert("Please enter Your first name.")</script> ';
$error = 1;
}
if($lastname == '')
{
echo ' <script>alert("The mail last name is empty ! please enter it.")</script> ';
$error = 1;
}
if($fathername == '')
{
echo ' <script>alert("The father name is empty ! please enter it.")</script> ';
$error = 1;
}
if($shenasname == '')
{
echo ' <script>alert("The shenasname is empty ! please enter it.")</script> ';
$error = 1;
}
if($Address == '')
{
echo ' <script>alert("The Address is empty ! please enter it.")</script> ';
$error = 1;
}
if($phonnumber == '')
{
echo ' <script>alert("The phon number is empty ! please enter it.")</script> ';
$error = 1;
}
if($error == 0)
{

$query="INSERT INTO `pers1` ( `first name` , `last name` , `father name` , `shenasname` , `address` , `phon number` )
VALUES ('$_POST[firstname]', '$_POST[lastname]', '$_POST[fathername]''$_POST[shenasname]''$_POST[address]''$_POST[phonnumber]')";
$result=mysql_query($query);
echo '<font size=7><b>ok insert</b></font>';
}
?>

musiox
یک شنبه 18 فروردین 1387, 11:53 صبح
کاش به اون نوشته قبلیت یه نگاه مینداختی!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! !!!!!!!!!!

ghola1364
یک شنبه 18 فروردین 1387, 11:54 صبح
من می خوام در این صفحه کاربر اطلاعات خود رو ذخیره کنه .
بعد یه سوال با چه دستوریمی تونم خودم اطلاعات واردشده توسط کاربر رو از طریق یه صفحه از دیتابیس بگیرم و ببینم و بتونم تغییرات روش بدم ؟
فقط راهنمایی من جسارت نمی کنم که کسی برام کد بنویسه
از راهنمایی دوستان در این زمینه پیشاپیش ممنون

ghola1364
یک شنبه 18 فروردین 1387, 11:57 صبح
من php رو کامل بلد نیستم در حال حاضر هم کللاس میرم ولی کلاس در حدی که من می خوام نیست برای همین از شما دوستان کمک میگیرم باز هم ببخشید من یه کمک تو این زمینه کند عمل می کنم

ghola1364
یک شنبه 18 فروردین 1387, 12:00 عصر
musioxجان من php رو کامل بلد نیستم در حال حاضر هم کللاس میرم ولی کلاس در حدی که من می خوام نیست برای همین از شما دوستان کمک میگیرم باز هم ببخشید من یه کمک تو این زمینه کند عمل می کنم

musiox
یک شنبه 18 فروردین 1387, 12:04 عصر
1. متغیرایی که داری مقایسه می کنی مقداری ندارن ( قبلا تعریف نشدن ) اول باید ورودی رو در یه متغیر ذخیره کنی بعد چک کنی .

$firstname=$_POST['firstname'];
2. برای اینکه چند تا عمل رو توی یه صفحه انجام بدی می تونی یه ورودی برای صفحه مثلا با نام act در نظر بگیری که مقادیرش مثلا add, del,edit باشه . با چک کردن این ورودی می تونی بفهمی که چه عملی باید انجام بشه .
دیگه؟

ghola1364
یک شنبه 18 فروردین 1387, 12:15 عصر
ببخشید این متغیر داخل دستور ifقرار بگیره یا قبل دستور if نوشته شه؟

ghola1364
یک شنبه 18 فروردین 1387, 12:18 عصر
musioxجان من گیج شود لطفا بیشتر توضیح بدین؟

musiox
یک شنبه 18 فروردین 1387, 12:26 عصر
$firstname=$_POST['firstname'];
if($firstname == '')
{
echo ' <script>alert("Please enter Your first name.")</script> ';
$error = 1;
}

ghola1364
یک شنبه 18 فروردین 1387, 13:23 عصر
<?php
$link = mysql_connect("localhost","root","") or die('error');
$link=mysql_select_db("pers", $link);
//Check for send button clicked ...
$error = 0;
$firstname=$_POST['firstname'];
if($firstname == '')
{
echo ' <script>alert("Please enter Your first name.")</script> ';
$error = 1;
}
$lastname=$_POST['lastname'];
if($lastname == '')
{
echo ' <script>alert("The mail last name is empty ! please enter it.")</script> ';
$error = 1;
}
$fathername=$_POST['fathername'];
if($fathername == '')
{
echo ' <script>alert("The father name is empty ! please enter it.")</script> ';
$error = 1;
}
$shenasname=$_POST['shenasname'];
if($shenasname == '')
{
echo ' <script>alert("The shenasname is empty ! please enter it.")</script> ';
$error = 1;
}
$Address=$_POST['Address'];
if($Address == '')
{
echo ' <script>alert("The Address is empty ! please enter it.")</script> ';
$error = 1;
}
$phonnumber=$_POST['phonnumber'];
if($phonnumber == '')
{
echo ' <script>alert("The phon number is empty ! please enter it.")</script> ';
$error = 1;
}
if($error==0);
{

$query="INSERT INTO `pers1` ( `first name` , `last name` , `father name` , `shenasname` , `address` , `phon number` )
VALUES ('$_POST[firstname]', '$_POST[lastname]', '$_POST[fathername]''$_POST[shenasname]''$_POST[Address]''$_POST[phonnumber]')";
$result=mysql_query($query);
echo '<font size=7><b>ok insert</b></font>';
}
?>


این کد درست الان بعد از اجرا و پر کردن فیلد ها باز errorخالی بودن قسمت Address می ده بعد از ok کردن boxerrorپیغام ok insertمی ده ولی چیزی تو دیتابیس ذخیره نمی شه

tizdast
یک شنبه 18 فروردین 1387, 13:54 عصر
بین مقادیری که باید تو فیلد ها ذخیره بشه کاما ها رو کامل نذاشتید

ghola1364
یک شنبه 18 فروردین 1387, 14:06 عصر
ممنون از هم حل شد