簡體   English   中英

表單提交按鈕不起作用的PHP

[英]Form submit button not working php

我正在嘗試從mysql更新數據
這是表格,它工作正常
碼:

$sb2e = mysql_query("select * from blocks where b_id ='$b_id' ");
$rbe  = mysql_fetch_object($sb2e);
if ($_REQUEST['edit'] == 'block')
{
echo ("<form action='?cpages=blocks' method='post'>
<table align='center' width='100%' cellpadding='0' cellspacing='0'>
<tr>
<td width='20%'>اسم المربع الجانبي</td>
<td width='80%'><input type='text' name='b_name' id='inputwrap' value='
".$rbe- >b_name."'/></td>
</tr>
<tr>
<td width='20%'>ترتيب المربع الجانبي</td>
<td width='80%'><input type='text' name='b_order' id='inputwrap' value='
".$rbe->b_order."'/></td>
</tr>
<tr>
<td width='20%'>مكان المربع الجانبي</td>
<td width='80%'> ");
if ($rbe->b_dir == 1)
{
  echo ("
<select name='b_dir' id='inputwrap'>
<option value='1'>يمين</option>
<option value='2'>اعلى المنتصف</option>
<option value='3'>اسفل المنتصف</option>
<option value='4'>يسار</option>
</select></td>
</tr> ") ;
}
else if ($rbe->b_dir == 2)
{
  echo ("
<select name='b_dir' id='inputwrap'>
<option value='2'>اعلى المنتصف</option>
<option value='3'>اسفل المنتصف</option>
<option value='1'>يمين</option>
<option value='4'>يسار</option>
</select></td>
</tr> ");
}
else if ($rbe->b_dir == 3)
{
  echo ("
<select name='b_dir' id='inputwrap'>
<option value='3'>اسفل المنتصف</option>
<option value='2'>اعلى المنتصف</option>
<option value='1'>يمين</option>
<option value='4'>يسار</option>
</select></td>
</tr> ");
}
else if ($rbe->b_dir == 4)
{
  echo ("
<select name='b_dir' id='inputwrap'>
<option value='4'>يسار</option>
<option value='2'>اعلى المنتصف</option>
<option value='1'>يمين</option>
<option value='3'>اسفل المنتصف</option>
</select></td>
</tr> ");
}


echo ("
<tr>
<td width='20%'>محتوى المربع الجانبي</td>
<td width='80%'><textarea name='b_content' id='inputwrap' rows='5' cols='40'>
".$rbe-  >b_content."</textarea> </td>
</tr>
<tr>
<td width='20%'>حالة المربع الجانبي</td>
<td width='80%'>
"); if ($rbe->b_active == 1) {
  echo ("
<select name='b_active' id='inputwrap'>
<option value='1'>مفعل</option>
<option value='2'>غير مفعل</option>
</td>
</tr> ");} else if ($rbe->b_active == 2)
{
  echo ("
<select name='b_active' id='inputwrap'>
<option value='2'>غير مفعل</option>
<option value='1'>مفعل</option>
</td>
</tr> ");
}   echo ("
<tr>
<td colspan='2'><input type='submit' value='تحديث' class='button' /></td>
</tr></table>
<input type='hidden' name='edit' value='blocks' />
<input type='hidden' name='b_id' value='".$rbe->b_id."' />
</form> ");
}

這是更新查詢

 if (isset($_POST['edit']) and $_POST['edit'] == 'blocks')

 {
 $updateblocks = mysql_query("update blocks 
 set  b_dir='$b_dir'
 ,b_order='$b_order'
 ,b_name='$b_name'
 ,b_content='$b_content',b_active='$b_active' where b_id='$b_id'

 ") or die (mysql_error());
 if ($updateblocks)
 {
  echo "done";
 }
 }

問題是,當我按下更新“代碼中的單詞“تحديث””時,沒有任何錯誤報告就什么也沒有發生
后值

$b_dir = strip_tags($_POST['b_dir']);
 $b_order = $_POST['b_order'];
 $b_name = strip_tags($_POST['b_name']);
 $b_content = addslashes($_POST['b_content']);
 $b_active = $_POST['b_active'];
 $b_id = intval($_GET['id']) ;

首先,我認為您應該使用像這樣的第一個生成函數,例如selected作為示例

function selected(a , b){
    if( a == b ) {
      return ' selected="selected" ' ;
    }
}

在本部分中, مكان المربع الجانبي在英語中表示“塊位置”

而不是使用這個

if ($rbe->b_dir == 1)
{
  echo ("
<select name='b_dir' id='inputwrap'>
<option value='1'>يمين</option>
<option value='2'>اعلى المنتصف</option>
<option value='3'>اسفل المنتصف</option>
<option value='4'>يسار</option>
</select></td>
</tr> ") ;
}
else if ($rbe->b_dir == 2)
{
  echo ("
<select name='b_dir' id='inputwrap'>
<option value='2'>اعلى المنتصف</option>
<option value='3'>اسفل المنتصف</option>
<option value='1'>يمين</option>
<option value='4'>يسار</option>
</select></td>
</tr> ");
}
else if ($rbe->b_dir == 3)
{
  echo ("
<select name='b_dir' id='inputwrap'>
<option value='3'>اسفل المنتصف</option>
<option value='2'>اعلى المنتصف</option>
<option value='1'>يمين</option>
<option value='4'>يسار</option>
</select></td>
</tr> ");
}
else if ($rbe->b_dir == 4)
{
  echo ("
<select name='b_dir' id='inputwrap'>
<option value='4'>يسار</option>
<option value='2'>اعلى المنتصف</option>
<option value='1'>يمين</option>
<option value='3'>اسفل المنتصف</option>
</select></td>
</tr> ");
}

您應該使用我們選擇的功能

echo "
    <select name='b_dir' id='inputwrap'>
    <option value='4' ".selected(  4 , $rbe->b_dir )." >يسار</option>
    <option value='2' ".selected(  2 , $rbe->b_dir ).">اعلى المنتصف</option>
    <option value='1' ".selected(  1 , $rbe->b_dir )." >يمين</option>
    <option value='3' ".selected(  3 , $rbe->b_dir )." >اسفل المنتصف</option>
    </select></td>
    </tr> ";

和你的問題

請在提交后打印$_POST並檢查所有值

最好的問候Sec.php

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM