کدش همینه دیگه من گزاشتم
شما کد کامل صفحه اول و صفحه دوم رو برای من اینجا بزار و مشکلش رو بگو تا من بررسی کنم ببینم کجای کارت مشکل داره
یه چیز دیگه یه عکس از اوون جدولی که توی دیتابیس داری بگیر اینجا بزار ببینم چجوریاست برا محکم کاری
Printable View
کدش همینه دیگه من گزاشتم
شما کد کامل صفحه اول و صفحه دوم رو برای من اینجا بزار و مشکلش رو بگو تا من بررسی کنم ببینم کجای کارت مشکل داره
یه چیز دیگه یه عکس از اوون جدولی که توی دیتابیس داری بگیر اینجا بزار ببینم چجوریاست برا محکم کاری
با سلام
کد صفحه ی ثبت نمرات :(صفحه ی اول)
کد صفحه ی دوم :کد:<?php
session_start();
mysql_select_db($database_adelcon, $adelcon);
$query_Recordset1 = "SELECT * FROM dc";
$Recordset1 = mysql_query($query_Recordset1, $adelcon) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
mysql_select_db($database_adelcon, $adelcon);
$query_Recordset2 = "SELECT * FROM dc";
$Recordset2 = mysql_query($query_Recordset2, $adelcon) or die(mysql_error());
$row_Recordset2 = mysql_fetch_assoc($Recordset2);
$totalRows_Recordset2 = mysql_num_rows($Recordset2);
mysql_select_db($database_adelcon, $adelcon);
$query_Recordset1 = "SELECT name, family, major FROM dc";
mysql_query("SET NAMES utf8");
mysql_query("SET CHARACTER SET utf8");
$Recordset1 = mysql_query($query_Recordset1, $adelcon) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
?><!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>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>Untitled Document</title>
<style type="text/css">
<!--
.style5 {font-family: Tahoma; font-weight: bold; font-size: 12px; }
.style8 {font-family: Tahoma; font-size: 12px; }
-->
</style>
</head>
<body>
<form id="form1" name="form1" method="post" action="grade.php">
<table width="1100" border="1">
<tr>
<th width="360" scope="col"><div align="center"><strong><span class="style8">نمره</span></strong></div></th>
<th width="360" scope="col"><span class="style8">نام خانوادگی </span></th>
<th width="358" scope="col"><span class="style8">نام</span></th>
</tr>
<?php do {
$counter +=1;
?>
<tr>
<td><div align="center">
<input type="text" name="grade<?php echo $counter; ?>" />
<input type="hidden" name="id<?php echo $counter;?>" id="hiddenField" value="<?php echo $row_Recordset1['ID']; ?>" />
</div></td>
<td><div align="center"><span class="style5"><?php echo $row_Recordset1['family']; ?></span></div></td>
<td><div align="center"><span class="style5"><?php echo $row_Recordset1['name']; ?></span></div></td>
</tr>
<?php } while ($row_Recordset1 = mysql_fetch_assoc($Recordset1)); ?>
</table>
<?php $_SESSION[counter]=$counter;?>
<p align="center">
<input name="Submit" type="submit" class="style5" value="Submit" />
</p>
<p align="center">
<label></label></p>
</form>
</body>
</html>
<?php
mysql_free_result($Recordset1);
mysql_free_result($Recordset1);
mysql_free_result($Recordset2);
?>
عکس از بانک :کد:<?php
session_start();
mysql_select_db($database_adelcon, $adelcon);
$query_Recordset1 = "SELECT * FROM dc";
$Recordset1 = mysql_query($query_Recordset1, $adelcon) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
$counter =$_SESSION[counter];
for ($n=1 ; $n <= $counter ; $n++ ){
$id="id".$n ;
$grade="grade".$n ;
$id = $_POST[$id] ;
$grade = $_POST[$grade] ;
$sql = "UPDATE dc SET b1 = '$grade' WHERE ID='$id'" ;
$result = mysql_query($sql) or die(mysql_error());
}
session_unset();
session_destroy();
mysql_free_result($Recordset1);
?>
[ برای مشاهده لینک ، با نام کاربری خود وارد شوید یا ثبت نام کنید ]
مشکل هم اینه که برای id های نامرتب کار نمی کنه
تو کد صفحه اول ID ها رو انتخاب نکردی
[PHP]$query_Recordset1 = "SELECT name, family, major FROM dc";
[/PHP]
من که گفتم تو صفحه دوم یه پرینت اول بگیر از داده های ارسالی به این صفحه ببین داه هات رست رسیدن یا نه
با سلام
مرسی
باز هم واسه id های نا مرتب کار نمی کنه ؟:41:
من از این کد استفاه کردم و بدونه مشکل جواب گرفتم شما هم دقیقا همین کد رو بزار ببین خروجیش چیه
اگهخ اطلاعات رو برات درست پرینت کرد وارد دیتابیسشون کن
[php]
<?php
session_start();
for ($n=1 ; $n <= $_SESSION['counter'] ; $n++ ){
$id="id".$n ;
$grade="grade".$n ;
$id = $_POST[$id] ;
$grade = $_POST[$grade] ;
echo $id . ":";
echo $grade ."</br>" ;
}
session_destroy();
?>[/php]ببین یکی از شایع ترین خطا های که توی php پیش میاد به خاطر نرسیدن متغیر ها به صفحه دیگست که شما فکر میکنی باید رسیده باشه و بر اون فرض میری کلی کار انجام میدی که به دلیل نبودن متغیره هیچکدوم انجام نمیشن و شما میمونی که چی شده
هر وقت مشکل داشتی اول از متغیر هات یه پرینت بگیر ببین سالم میرسن یا نه
در ضمن من نمیفهمم اینهمه کد اضافی رو برای چی توی صفحه دوم گزاشتی
[PHP]
mysql_select_db($database_adelcon, $adelcon);
$query_Recordset1 = "SELECT * FROM dc";
$Recordset1 = mysql_query($query_Recordset1, $adelcon) or die(mysql_error());
$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
[/PHP]
با سلام
خیلی خیلی ممنون و متشکر
دست شما درد نکنه
کار کرد
در مورد کد های اضافه هم اون سه خط اول برای اتصال به بانک اطلاعاتی هست
فقط این ها اضافه هست :
یعنی این سه خط باید باشه برای اتصال به بانک اطلاعاتی :کد:$row_Recordset1 = mysql_fetch_assoc($Recordset1);
$totalRows_Recordset1 = mysql_num_rows($Recordset1);
من جز دعای خیر در حق شما کار دیگه از دستم بر نمی آدکد:mysql_select_db($database_adelcon, $adelcon);
$query_Recordset1 = "SELECT * FROM dc";
$Recordset1 = mysql_query($query_Recordset1, $adelcon) or die(mysql_error());
براتون دعای خیر می کنم
ممنون
یه سوال دیگه مگه قبل از پایان نشست نباید اون ها رو از حالت ثبت خارج کرد؟
کد بالایی درست تر است یا این:کد:session_unset();
session_destroy();
باز هم ممنونکد:session_destroy();
[php]mysql_select_db($database_adelcon, $adelcon);
$query_Recordset1 = "SELECT * FROM dc";
$Recordset1 = mysql_query($query_Recordset1, $adelcon) or die(mysql_error());[/php]از اینا فقط خط اول رو برای وصل شدن به دیتابیس نیاز داری اون دو خط آخر هم اضافی هستن و هیچکاری نمیکنن
شما برای اینکه به دیتابیست چیزی اضافه یا کم کنی
نیاز نیست که قبلش یه
select *
بگیری
در مورد سوال دومت هم
session_destroy
میاد همه سشن ها رو از بین میبره هرچی که باشه که استفاده ازش زیاد عاقلانه نیست چون ممکنه سشنی باشه که بهش هنوز احتیاج داری
اما session_unset میاد فقط یه سشن خاص رو از بین میبره مثل :
[php]unset($_SESSION['variable']); [/php]
با سلام
من یه فیلد دارم که کد های امنیتی داخلش قرار می گیرین
خود. دستی این کد ها رو وارد بانک می کنم
و وقتی می خوام بینم چیزی که کاربر در فرم وارد کرده با این براره یا نه اگه فیلد های بانک اطلاعاتی انگلیسی باشه یا حتی یک کاراکتر انگایسی داشته باشه دیگه درست کار نمی کنه
توی بانک اینه : asd
کاربر توی فرم هم همین رو وارد می کنه : asd
ولی موقع مقایسه میگه یکی نیست
ولی اگه عدد باشه کار می کنه
چون می خوام کارکترهای فارسی رو درست در بانک وارد کنم از این کد استفاده کردم :
این جدول هم روی هرچی که بگین ست کردم :کد:mysql_select_db('el',$db);
mysql_query("SET NAMES 'utf8' ", $db);
charset :latin 1,utf8
collatw : latin1_general_ci,utf8_pesrian_ci
اون کد رو هم پاک کردم منظورم اینه :
باز هم جواب نمی دهکد:mysql_select_db('el',$db);
mysql_query("SET NAMES 'utf8' ", $db);
همه ی زحماتم بر باد رفت
ممنون میشم کمک کنید
وقتی جدول یا یتا بیس میسازی Collation رو برابر با utf8_persian_ci بزار دیگه اونا چیه دستکاری کردی
کد مقایست رو هم بزار ببینم موقع مقایسه هم از == استفاده کن نه یدونه
با سلام
درست شد
1- باید از تک مساوی استفاده بشه =
2-کد درستش میشه این :
یادم رفته بود ''کد:$sql="select codetea from codestea
where codetea='$code'";
تک کوتیشن استفاده کنم