أردت خلط if مع insert لاكن وقع الخطأ السلام عليكم و رحمة الله و بركاته
أقد بدأت في انشاء سكربت سوف أشرح لكم مضمونه .
أدخل قيمة في نوذج text فادا وافقت القيمة التي في النموذج text اسم الجدول مثلا 1 الدي في قاعدة البيانات
يدخل المعطيات الى دلك الجدول و ادا وافقت اسم الجدول 2 تدخل المعطيات في الجدول رقم 2
الكم الكود :
كود:
<?
include("../config.php");
$v = ( $_POST['v'] ) ;
$division = ( $_POST['division'] ) ;
$title = ( $_POST['title'] ) ;
$note = ( $_POST['note'] ) ;
$link = ( $_POST['link'] ) ;
if($v=="typ"){$query = "INSERT INTO typ (division,title,note,link) VALUES('$division','$title','$note','$link')";
mysql_query($query) or die(mysql_error());
}
if($v=="mc") {$query = "INSERT INTO ms (division,title,note,link) VALUES('$division','$title','$note','$link')";
@mysql_query($query) or die(mysql_error());
}
if($v=="fyb") {$query = "INSERT INTO fyb (division,title,note,link) VALUES('$division','$title','$note','$link')";
@mysql_query($query) or die(mysql_error());
}
if($v=="syb") {$query = "INSERT INTO syb (division,title,note,link) VALUES('$division','$title','$note','$link')";
@mysql_query($query) or die(mysql_error());
}
else {echo"هنالك خطأ تحقق من المدخلات";}
?> هنالك خطأ ما , فهو يظهر العبارة التالية على المتصفح :
هنالك خطأ تحقق من المدخلات .
رجاءا هل هنالك حل لمشكلتي هده .
15-06-2009, 02:28 PM
تحياتي اخي الكريم
لا املك الخبره بصراحة في هذه اللغه ولكني مبتدئ بتعلمها ولكن وجدت ان طريقة switch افضل من if في هذه الحاله
والكود يصبح كالتالي
جربه اخي الكريم
كود:
switch($v)
{
case "type":
$query = "INSERT INTO typ (division,title,note,link) VALUES('$division','$title','$note','$link')";
mysql_query($query) or die(mysql_error());
break;
case "mc" :
$query = "INSERT INTO ms(division,title,note,link) VALUES('$division','$title','$note','$link')";
mysql_query($query) or die(mysql_error());
break;
case "fyp" :
"INSERT INTO fyb (division,title,note,link) VALUES('$division','$title','$note','$link')";
@mysql_query($query) or die(mysql_error());
break;
case "syb":
"INSERT INTO syb (division,title,note,link) VALUES('$division','$title','$note','$link')";
@mysql_query($query) or die(mysql_error());
break;
default :
echo "something wrong";
break;
}
15-06-2009, 04:13 PM
هذا طبيعي لانك حددت ال else على syb فقط وبالتالي اذا كان الشرط غير syb سيقوم بطباعة الخطأ
__________________ قل اللهم مالك المُلك تؤتي الملك من تشاء وتنزع الملك ممن تشاء وتعز من تشاء وتذل من تشاء بيدك الخير انك على كل شىء قدير
15-06-2009, 06:15 PM
بالضبط مثل ما قال الاخ "مهندس مصري"
تحتاج تستخدم elseif
كود:
<?
include("../config.php");
$v = ( $_POST['v'] ) ;
$division = ( $_POST['division'] ) ;
$title = ( $_POST['title'] ) ;
$note = ( $_POST['note'] ) ;
$link = ( $_POST['link'] ) ;
if($v=="typ"){$query = "INSERT INTO typ (division,title,note,link) VALUES('$division','$title','$note','$link')";
mysql_query($query) or die(mysql_error());
}
elseif($v=="mc") {$query = "INSERT INTO ms (division,title,note,link) VALUES('$division','$title','$note','$link')";
@mysql_query($query) or die(mysql_error());
}
elseif($v=="fyb") {$query = "INSERT INTO fyb (division,title,note,link) VALUES('$division','$title','$note','$link')";
@mysql_query($query) or die(mysql_error());
}
elseif($v=="syb") {$query = "INSERT INTO syb (division,title,note,link) VALUES('$division','$title','$note','$link')";
@mysql_query($query) or die(mysql_error());
}
else {echo"هنالك خطأ تحقق من المدخلات";}
?>
16-06-2009, 04:08 AM
اختصار للكود وتنفيذه بشكل اخر
كود PHP:
<? $v = ( $_POST [ 'v' ] ); $v_array = array( 'typ' , 'mc' , 'fyb' , 'syb' ); if ( in_array ( $v , $v_array )) { mysql_query ( "INSERT INTO $v (division,title,note,link) VALUES('$division','$title','$note','$link')" ) or die( mysql_error ()); }else { echo "هنالك خطأ تحقق من المدخلات" ; } ?>
16-06-2009, 05:18 AM