2013-11-15 69 views
-2

我想知道如何在php函数中执行mysqli操作。我尝试使用提交按钮使用mysqli_query(),mysqli_fetch_array()方法,它工作。但在按钮类型=“按钮”我不得不使用功能。这些功能不适用于这些方法。我怎样才能执行这些mysql内部的PHP函数查询?如何在php函数中使用Mysql?

global $con;  
$con = mysqli_connect("localhost","root","");  
if(!$con) 
    die("Error: ". mysqli_error());  
else 
mysqli_select_db($con,"cityscape_content_management"); 

function delete_user() 
{  
include("PHP_Files/PHP_Form_Fields.php");  
    $id = $_POST["txtEmpID"];  
    $query_del = "delete from User_Register where emp_id = $id"; 

if(mysqli_query($con,$query_del)) 
    echo "Record Deleted";  
else 
    echo "Error :".mysqli_error($con); 
} 
+0

您的按钮,如果“不工作”的意思是“我得到了一个未定义的变量声明”,你应该提到它。如果您没有收到任何意味着您的脚本正在抛出错误,但尚未配置PHP以显示错误消息的消息。这是你在进一步研究之前需要解决的问题;没有错误消息的帮助,就不可能正确编码。这里有一个[简要说明](http://stackoverflow.com/a/5680885/13508)。 –

回答

0

你必须通过$con的功能,否则就不是在那里定义。

+0

它的工作,但似乎有一些代码的问题,phpmyadmin不会刷新..后mysql操作插入,更新,删除,选择 – shruti

-1

使用全局内部函数,你已经在外面使用它。

function delete_user() 
    { 
    global $con; 
    include("PHP_Files/PHP_Form_Fields.php"); 

     $id = $_POST["txtEmpID"]; 

     $query_del = "delete from User_Register where emp_id = $id"; 

    if(mysqli_query($con,$query_del)) 
     echo "Record Deleted"; 

    else 
     echo "Error :".mysqli_error($con); 
    } 
+2

呃,全局变量... –

+0

-1 SQL注入全局变量包括与未知方效果......你是在写**最糟糕的**可能的代码? –

+0

*理论-1 * ...我不会真的downvote,因为这个代码在技术上没有什么不正确。但“全球化”可能是解决这个问题的最糟糕的方法。永远不要这样做。 – rdlowrey

0

您可以通过$ CON并且$ id变量作为函数参数:

$con = mysqli_connect("localhost","root","") or trigger_error(mysqli_error());  
mysqli_select_db($con,"cityscape_content_management") or trigger_error(mysqli_error($con)); 
delete_user($_POST["txtEmpID"], $con); 

功能:

function delete_user($id, $con) 
{  
    $id = intval($id); 
    include("PHP_Files/PHP_Form_Fields.php");  
    $query_del = "delete from User_Register where emp_id = $id"; 

    if(mysqli_query($con, $query_del)) 
     echo "Record Deleted";  
    else 
     echo "Error :" . mysqli_error($con); 
} 
+0

删除操作后,phpmyadmin数据库没有被刷新。此外,它删除了几条记录和其他记录停止工作..什么可能是可能的问题...我使用按钮,而不是提交,因为每次点击后提交重新加载页面.. – shruti

0

建议您使用PDO,它看起来更友好作品非常安全

0

button type =“button”不会将数据发布到serv呃,所以你的功能将无法正常工作, 要么你保持类型=提交或者如果你想类型=按钮,那么你需要提交的点击事件格式如

1)onlick = 'document.getElementById("frm1").submit()';

其中的frm1是表单ID 或

2)类似的代码

<button type="submit" formaction="delete.php" value="delete" /> 
+0

但如果我提交,页面重新加载..我不想重新发生。如果我使用preventDefault()去激活重载,那么函数不工作.. – shruti

+0

如果你不重新加载PHP代码将不会执行,导致运行PHP代码数据必须发送到服务器,否则它不会工作,或者你可以使用Ajax做任务不刷新 – ddw147

相关问题