با سلام
دوست عزیز کارهایی رو که گفتین با موفقیت انجام دادم
ممنون
بعد چیکار کنم ؟
Printable View
با سلام
دوست عزیز کارهایی رو که گفتین با موفقیت انجام دادم
ممنون
بعد چیکار کنم ؟
الان وقتی که صفحه رو اجرا میکنی یه تیبل نمایش داده میشه که توش اسمه دانش آموز ها و یه فیلد روبروشونه ؟
کد اون تیبل رو بزار تا بقیشو بگم
با سلام
جلوی فیلد نام یه فیلد نام خانوادگی هم هست بعد یه فیلد نمره دارم که تکس باکس ها اونجا قرار می گیرن
این هم کد :
کد:<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 { ?>
<tr>
<td><div align="center">
<form id="form1" name="form1" method="post" action="">
<label>
<input type="text" name="textfield" />
</label>
</form>
</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>
آفرین
حالا شما نیاز به یه شمارنده داری
البته با num_row فرق داره این
شما به یه نام گزاری خاص احتیاج داری که تویه اون صفحه دوم بتونی این فیلد ها رو دریافت کنی
حالا وقتی نمیدونی چند تا فیلد قراره فرستاه بشه چی باید کرد
شما میای یه شمارنده میسازی که به ازای هر بار خونده شن یک سطر از دیتابیس یه شماره اضافه بشه و این شما ره رو به نام تکست فیلد ها اضافه میکنی lمتغیر $counter رو نگا کن توی کد
اینطوری میشه
[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">
<form id="form1" name="form1" method="post" action="">
<label>
<input type="text" name="<?php echo $counter; ?>grade" />
<input type="hidden" name="<?php echo $counter; ?>id" id="hiddenField" value="<?php echo $row_Recordset1['id']; ?>" />
</label>
</form>
</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]
کد رو ببر تو دریم ویور جای کد خودت بزار تا متوجه بشی
خوب الان اگه مثلا 3 تا دانش آموز داشته باشی میدونی که نام فیلد های نمرشون چی میشه
1grade
2grade
3grade
حالا دیگه فقط کافیه بدونی که تعدا کل فیلد هات چند تاست
که این رو میتونی از مقدار counter بفهمی
بر اساس اون میتونی نام فیل ها رو متوجه بشی
مثلا اگه counter مقدارش 10 بود میفهمی که 10 تا فیلد هست
پس نام هاشون رو میدونی 1grade....تا...10grade
یه فیلد مخفی هم میزاریم که توی اون id دانش آموز ذخیره میشه
اینطوری وقتی نمره میره به یه صفحه دیگه بدونیم که این نمره ماله کدوم دانش آموزه
پس اینطوری میشه داده هامون برای 3 نفر
نمره دانش آموز - آیدی دانش آموز
نمره دانش آموز - آیدی دانش آموز
نمره دانش آموز - آیدی دانش آموز
اگه تا اینجاشو متوجه شدی بگو تا ادامه بدیم
نمره دانش آموز - آیدی دانش آموز
دوست عزیز ،
شما می تونی با کد زیر بدون هیچ اشکالی به mysql وصل بشی :
[php]<?php
$conn=mysql_connect("localhost","root",'');
$sql="select * from YOUR_TABLE";
$query=mysql_query($sql);
?>[/php]
با سلام
دست شما درد نکنه فهمیدم
grade1=id1
گرفتم چی شد
دستتون درد نکنه
شما ادامه بدین ولی شاید خودم بتونم بقیه اش رو بنویسم ؟
هرچی فکرش رو میکنم
می بینم درست نیست 40 تا نمره رو با نشست بین صفحات منتقل کرد
id رو منتقل کردم
ولی نمرات رو خواستم با حلقه منتقل کنم دیدیم کار بی خودی هستش
منتظر راه حل شما هستم
من از این دوستورات استفاده کردم:
session_start();
session_$
ببین الان ما توی اطلاعات فرممون هم نمره دانش آموز هم آیدیش رو داریم و با فرم میتونیم بفرستیمش به صفحه دیگه دیگه برای چی از سشن استفاده کنیم ؟
نه ببین مثلا ما همون 3 تا رو داریمنقل قول:
grade1=id1
گرفتم چی شد
name = ali , id=1 , grade=18
name = max , id=4 , grade=15
name = mamad , id=8 , grade=12
اطلاعاتی و متغیر هایی که از طریق فرم ما به صفحه دیگه فرستاده میشه اینطوری میشن
1grade=18 , 1id=1
2grade=15 , 2id =4
3grade=12 , 3id=8
اگه بیشتز بودن ...
4grad=...a , 4id=.....b
مگه نه اینکه باید اطلاعات یه فرم رو وقتی ارسال کردیم توی صفحه یگه که میخایم پردازش کنیم اول اینطوری دریافت کنیم
[php]$idfield = $_post['idfield'][/php]
ما سعی کردیم یه سیستم نام گزاری بر روی فیلد ها پیدا کنیم که بدونه دونستن تعداد فیلد ها و نام فیلد ها بتونیم توی صفحه دیگه با متد post نامشون رو حدس بزنیم و دریافتشون کنیم
توی اون کد که برات اصلاح کردم به این قسمت ها یه بار دیگه توجه کن تا متوجه بشی
[php]
$counter +=1;
[/php]کد:
اگه اینو متوجه بشی بقیش سادستکد:
<input type="text" name="<?php echo $counter; ?>grade" />
<input type="hidden" name="<?php echo $counter; ?>id" id="hiddenField" value="<?php echo $row_Recordset1['id']; ?>" />
متوجه شدم
حالا قسمت آخر رو چه جوری بنویسم ؟
بیام 50 تا رو از فرم دریافت کنم ؟
میدونم 50 تا نیست به تعداد همون کانتری که گزاشتید هست
اگه میشه کد ثبت نمرات رو بنویسید
یه خورده فکر کردم کاملاً فهمیدم چی شد
حالا یه حلقه می خوایم که به تعداد کانتر لوپ بخوره
ولی باز هم نمی دونم برای هر نمره باید یه متغیر در نظر بگیرم؟
اخه باید از فرم بت متد post دریافت کنم اون هم که متغیر می خواد
میشه post رو بدون متغیر استفاده کرد ؟
ممنون
ضمناً من خودم کد رو دستکاری کردم :
1grade
1id
شده این (این جوری بهتره)
grade1
id1
یه خورده فکر کردم کاملاً فهمیدم چی شد
حالا یه حلقه می خوایم که به تعداد کانتر لوپ بخوره
ولی باز هم نمی دونم برای هر نمره باید یه متغیر در نظر بگیرم؟
اخه باید از فرم بامتد post دریافت کنم اون هم که متغیر می خواد
میشه post رو بدون متغیر استفاده کرد ؟
موقع ثبت نمره هم اگه اشتباه نکنم باید از update استفاده کنم
چون این رکورد وجود داره و ما می خوایم فیلد نمرات را به روز کنیم
شاید هم دارم اشتباه می کنم
اره دسته
حالا اونور باید یه حلقه بزاری که به اندازه مقدار کانتر دور بزنه و دریافت کنه داده ها رو
در مورد اون تغییر اسمایی که ایجاد کردین باید بگم که هیچوقت تو برنامه نویسی برای نام گزاری از فاصله خالی استفاده نکن به مشکل برمیخوری
شما فرض کن یه تکست فیلد داری که توی اون مشخصهنقل قول:
ولی باز هم نمی دونم برای هر نمره باید یه متغیر در نظر بگیرم؟
اخه باید از فرم بامتد post دریافت کنم اون هم که متغیر می خواد
میشه post رو بدون متغیر استفاده کرد ؟
name="grade
هستش
و مقداری که توش نوشتی هم مثلا 10 هست
حالا اگه دکمه ثبت رو بزنی مقدار این فیلد به صفحه دیگه فرستاده میشه
به این صورت
grade = 10
و توی اون صفحه ما یه متغیر داریم به اسم grade و مقدار 10
===================================
حالا من نمیدونم تعریف شما از متغیر چیه که میگی متغیری نداریم
پس اون تکست فیلدایی که برای نمره جلوی اسما نوشتی کارشون چیه ؟ اونا همون متغیر هایی هستن که نمره رو تو خودشون ذخیره میکنن و به صفحه یگه فرستاده میشن
درستهنقل قول:
موقع ثبت نمره هم اگه اشتباه نکنم باید از update استفاده کنم
چون این رکورد وجود داره و ما می خوایم فیلد نمرات را به روز کنیم
شاید هم دارم اشتباه می کنم
__________________
یکی یکی نمره رو به همراه آیدی میخونی
و آپدیت میکنی
البته خوده همین لوپ کردن و آپ کردن نیاز به کمی فکر داره
همونطوری که توی این صفحه از متغیر counter برای نام گزاری استفاه کردی همونطوری هم توی اون صفحه برای نام گزاری
کد صفحه دوم یه چیزی اینجوری میشه (اون فاصله خالی توی نامگزاری رو بردار)
[PHP]
$counter = $_POST['counter'];
for ($n=1 ; $n <= $counter ; $n++ ){
$id="id".$n ;
$grade="grade".$n ;
$id = $_POST[$id] ;
$grade = $_POST[$grade] ;
$sql = "UPDATE `table` SET `grade` = '$grade' WHERE `id` ='$id'" ;
$result = mysql_query($sql) or die(mysql_error());
}[/PHP]
با سلام
دوست عزیز مشکل دارم این ها که شی نیستند که بخوان نام داشته باشن و بشه با اسمشون به انها دسترسی پیدا کردکد:$counter = $_POST['counter'];
منظورم متغیر کانتر هست
یعنی با متد post نمیشه یه متغیر رو از یه صفحه دیگه بخونیم
به نظرم باید از session استفاده کنم درسته ؟
من با session وارد حلقه می شم اما رکوردها رو آپ نمی کنم ؟
نمی دونم چرا ؟
این کد هستش :
ولی رکوردها آپ نمیشهکد:<?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];
echo $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());
}
mysql_free_result($Recordset1);
?>
با echo که کد بالا رو دنبال کردم خروجی زیر رو برای 4 نفر اینجوری ایجاد کرد :(که به نظر خود من هم درسته)
id1grade1 12 id2grade2 13 id3grade3 14 id4grade4 15
ولی نمی دونم چرا آپ دیت نمی کنه ؟
نمرات هم به ترتیب اینجوری بودن :
12
13
14
15
فهمیدم !!!
باید در متغیر id با توابع رشته ها به دنبال زیر رشته ی id باشیم و از رشته حذفش کنیم
که فقط عدد بمونه
مثال : 2=id2
چون در فیلد ID موجود در جدول فقط قسمت عددی وجود داره
1 2 3 .... اینجوریه
حالا اگه میشه در این رابطه کمک کنید ؟
درست شد
مرسی مرسی
توضیح :
ابتدا نام فیلد مخفی موجود در فرم را به این شکل تعغییر دادم :
این بود :
به این تعغییرش دادم :کد:id<?php echo $counter;?>
بعد کد فرم action رو به این شکل تعغییر دادم:کد:<?php echo $counter;?>
و بعد درست شدکد:for ($n=1 ; $n <= $counter ; $n++ ){
$grade="grade".$n;
$grade = $_POST[$grade];
$sql = "update dc set b1='$grade' where ID='$n'";
$result = mysql_query($sql) or die(mysql_error());
}
حالا اگه میشه ببینید این کد منطقی هست یا نه؟
می دونم داره کار میکنه اگه شما بودید این جوری عمل می کردید یا نه
خیلی ممنون MAXXX
اگه میشه یه نگاهی به کدهای جدید بنداز ببین چه جوری هاست ؟
می دونم خیلیPHP افتضاحه ؟؟؟!!(شما بگین)
ولی خیلی زبونه خوبیه
ممنون
سلام
اول در مورد اون کانتر ببخشی من یه فیل مخفی دارم که توش کانتر رو نگه میدارم و به صفحه بع میفرستم یادم رفته بود تو کد شما بزارم با همون سشن که گزاشتی خوبه ولی مواظب باش وقتی کارت تموم میشه سشن رو از بین ببری و گرنه اگه طرف نمره ها رو وارد کرد خواست دوباره بیا وارد کنه کانتر از مقدار قبلی اامه پیدا میکنه
خب حالا بقیه کدتون
این تغییری که توش دادین اشتباست
[PHP]
for ($n=1 ; $n <= $counter ; $n++ ){
$grade="grade".$n;
$grade = $_POST[$grade];
$sql = "update dc set b1='$grade' where ID='$n'";
$result = mysql_query($sql) or die(mysql_error());
}
[/PHP]
خب این کد در صورتی که id ها به ترتیب از 1 تا ....n باشن درسته ولی فرض کن یکی از دانش آموز ها رو حذف کرد یا مثلا خواست 4 تای آخر جدول رو بیاره نمره بده یا خلاصه توی جدول یه جابجایی انجام بشه که جای آیدی ها رو به هم بزنه مثلا بع از آیدی 3 بشه آیدی 5 و 3 بره یه جای یگه
این توری ترتیب id ها بهم میخوره
من از عمد توی مثلای که برات زدم id ها رو اینطوری برات نوشتم
name = ali , id=1 , grade=18
name = max , id=4 , grade=15
name = mamad , id=8 , grade=12
ببین id ها به ترتیب نیستن
من این خط رو توی کد اصلیت گزاشتم
الان یکم تغییرش دادم تا با تغییراتی که خوت اده بودی اسمش هماهنگ بشه اینو به جای خط قبلی بزار[PHP]
<input type="hidden" name="id<?php echo $counter; ?>" id="hiddenField" value="<?php echo $row_Recordset1['id']; ?>" />
[/PHP]
یه فیلد مخفی که مقدار id , برای هر انش آموز نگه میداره
الان اینطوری میشه وضعیت متغیر این فیلد
id1=1
id2=4
id3=8
خب این مقادیر رو به صفحه دوم میفرستی و مقادیر نمره های متناضرشون رو هم به صفحه دوم با فیلد grade میفرستی
توی اون صفحه دوم یه اکو بگیر ازشون ببین همه چیز درسته یا نه مثلا اینطوری باید بشه اکو
id1=1 , grade1=18
id2=4 , grade1=15
.......................
بقیشم که بلدی
باشه دست شما درد نکنه
خیلی زحمت دادم
ممنون
این که باز میشه همون
هر کاری می کنم باز هم id همراش که
نمی دونم چیکار کنم
اگه میشه کد کامل رو بزارین
با ویرایش خودتون
ممنون
کدش همینه دیگه من گزاشتم
شما کد کامل صفحه اول و صفحه دوم رو برای من اینجا بزار و مشکلش رو بگو تا من بررسی کنم ببینم کجای کارت مشکل داره
یه چیز دیگه یه عکس از اوون جدولی که توی دیتابیس داری بگیر اینجا بزار ببینم چجوریاست برا محکم کاری
با سلام
کد صفحه ی ثبت نمرات :(صفحه ی اول)
کد صفحه ی دوم :کد:<?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'";
تک کوتیشن استفاده کنم