2015-05-21 131 views
-4

我怎样才能使一段选择语句作为PHP变量? 例如: 我有选择语句中的2个选项 - 编辑和删除...我在下拉菜单中有2个选项...我想做一个MySQL数据库编辑或删除记录/用户...我试过使用开关和案例,但它只给了我默认的选择。PHP设置选择变量

<select name="editSelector"> 
<option name='edit'>Edit</option> 
<option name='delete'>Delete</option> 
</select> 
<?php 
if (select == edit) 
{ 
edit query here 
} 
elseif (select == delete) 
{ 
delete query here 
} 
?> 

我知道,这个代码没有任何变数等等。因为我不知道如何做选择,因为变量。它已经连接到数据库。提前感谢您的答复。

+0

尝试使用AJAX,因为你不能访问PHP脚本一次页面加载 – Babar

+0

我在PHP初学者的/ MySQL的这是学校项目 - 我没有经验的阿贾克斯 – mbeben

+0

Babar是正确的使用Ajax和Onchange作为你的函数和post方法。 – Terabyte

回答

1
<?php 
    if($_REQUEST['editSelector'] == "edit"){ 
edit here; 
} 
else if ($_REQUEST['editSelector'] == "delete"){ 
delete here; 
} 
    ?> 

加:

<select name="editSelector"> 
<option value='edit'>Edit</option> 
<option value='delete'>Delete</option> 
</select> 
+0

我试过它已经没有工作;)总是错误,editSelector是一个字符串不可变 – mbeben

+0

你的选择应该有“价值”而不是“名称”。 –

+0

试过两个 - 同样的错误:) – mbeben

0

您需要将您的select > option列表的形式和处理它使用POST的正确方法。

我强烈建议针对使用ajax来促进数据库中的任何crud活动。除非你知道你在做什么非常不安全。

heres一个合理的网络资源,如果你需要查找的东西。

HTML文件

<form name='option_form' action='someProcessingFile.php' method='post'> 
    <select name="editSelector"> 
     <option value='edit'>Edit</option> 
     <option value='delete'>Delete</option> 
    </select> 

    <input type='submit' name='submit' value='Submit'/> 
</form> 

someProcessingFile.php

<?php 
if(isset($_POST['editSelector']) { 
    switch($_POST['editSelector']) { 
     case 'edit': 
      // do something here, probably with the rest of the form 
      break; 
     case 'delete': 
      $id = htmlspecialchars($_POST['id']); 
      // do something here and delete the entry 
      break; 
     default: 
      // do something here to let yourself know that it all went wrong for some reason. 
    } 
}