不使用wordpress和php在mysql数据库中输入数据

不使用wordpress和php在mysql数据库中输入数据,php,mysql,wordpress,Php,Mysql,Wordpress,我正在尝试向mysql表添加一个新用户名。但每次我尝试这样做时,都没有错误消息,但数据库中没有添加任何行 这是包含php的wordpress页面: <table> <form name="form1" method="post" action=""> <strong>Please enter your information in order to download the Macs Cabs App</strong> <tr>

我正在尝试向mysql表添加一个新用户名。但每次我尝试这样做时,都没有错误消息,但数据库中没有添加任何行

这是包含php的wordpress页面:

<table>
<form name="form1" method="post" action="">
<strong>Please enter your information in order to download the Macs Cabs     
App</strong>
<tr><td>
Name:</td><td><input name="Name" type="text" id="sName"></td></tr>
Email Address:</td><td><input name="Email" type="text" id="sEmail"></td>   </tr>
<tr><td>
<input type="submit" name="Submit" value="Submit"></td></tr>
</form></table>

<?php
$con = mysql_connect("localhost","root","root");
if (!$con)
{
   die('Could not connect: ' . mysql_error());
}
mysql_select_db("foundint_Sababa", $con);

$sql="INSERT INTO `Users` (`sName`, `sEmail`)  
VALUES    ('{$_POST['sName']}','{$_POST['sEmail']}')";


if (!mysql_query($sql,$con))
{
  die('Error: ' . mysql_error());
}
echo "1 record added";

$info = mysql_info(); echo $info;

mysql_close($con);
?>
现在在我的页面中,我尝试调用此函数,我正在执行以下操作:

<table>
<form name="form1" method="post" action="">
<strong>Please enter your information in order to download the Macs Cabs     
App</strong>
<tr><td>
Name:</td><td><input name="Name" type="text" id="sName"></td></tr>
Email Address:</td><td><input name="Email" type="text" id="sEmail"></td>       </tr>
<tr><td>
<input type="submit" name="Submit" value="Submit"></td></tr>
</form></table>
<?php
 if(isset($_POST['Submit']))
   {
     include("./my-codes/insertUsers.php");
   } 
?>

请输入您的信息以下载Macs Cabs
应用程序
姓名:
电邮地址:
我仍然无法在数据库中插入任何行。有什么建议吗

编辑
我需要一个插件来连接我的sql数据库和wordpress。代码是正确的。

使用像这样的查询使事情发生

$sql="INSERT INTO `Users` (`sName`, `sEmail`) VALUES ('".$_POST['sName']."','".$_POST['sEmail']."')";
为了防止注入,您可以使用这种方法来构建查询

$name=addslashes($_POST['sName']);
$email=addslashes($_POST['sEmail']);
$sql="INSERT INTO `Users` (`sName`, `sEmail`) VALUES ('$name','$email')";
使用准备好的语句

$mysqli = new mysqli("example.com", "user", "password", "database");
$name=addslashes($_POST['sName']);
$email=addslashes($_POST['sEmail']);

$stmt=$mysqli->prepare("INSERT INTO `Users` (`sName`, `sEmail`) VALUES (?,?)");
$stmt->bind_param("ss", $name,$email);
$stmt->execute();

有关准备好的语句的详细信息,请使用我提供的代码替换您的代码

    <table>
    <form name="form1" method="post" action="">
    <strong>Please enter your information in order to download the Macs Cabs     
    App</strong>
    <tr><td>
    Name:</td><td><input name="Name" type="text" id="sName"></td></tr>
    Email Address:</td><td><input name="Email" type="text" id="sEmail"></td>   </tr>
    <tr><td>
    <input type="submit" name="Submit" value="Submit"></td></tr>
    </form></table>

    <?php
    $con = mysql_connect("localhost","root","root"); // ensure that your password in empty or root in your localhost
    if (!$con)
    {
       die('Could not connect: ' . mysql_error());
    }
    mysql_select_db("foundint_Sababa", $con);

    if(isset($_POST['Submit']))
    {
       // Previous Insert Query which has discrepency in form input names and Insert Values 
      //$sql="INSERT INTO `Users` (`sName`, `sEmail`) VALUES ('{$_POST['sName']}','{$_POST['sEmail']}')";

      // My new Query with corrected form input names for Input Values during POST.
        $sql = "INSERT INTO `Users`(`sName`, `sEmail`) VALUES ('".$_POST['Name']."','".$_POST['Email']."')";
        if (!mysql_query($sql,$con))
        {
            die('Error: ' . mysql_error());
        }
        echo "1 record added";
        $info = mysql_info(); echo $info;
        mysql_close($con);
    }

请输入您的信息以下载Macs Cabs
应用程序
姓名:
电邮地址:

注意:
mysql.*
函数已被弃用,它们已从PHP7中删除,当您升级到该版本时,您的代码将停止工作。您不应该使用它们编写新代码,而是使用它们。这是一个怎样的wordpress页面?其中没有wordpress函数…您应该使用
$wpdb
在wordpress中进行数据库查询我应该在页面内添加
$wpdb
吗?是的,您必须添加
gobal$wpdb在页面顶部,如果您指出实际问题是什么(表单字段名称和使用的变量名称之间存在差异),那么答案将更有帮助。在当前状态下,每个人都必须将其与每行原始代码行进行比较,以找出差异。差异是
if(isset($\u POST['Submit']))
但仍不工作。我认为与数据库的连接有问题。连接中可能缺少任何内容?请确保您的本地主机具有连接密码。大多数情况下,它是空的,但您提到过它有根,而在wordpress中使用它时,最好使用Wp Query插入数据库并从数据库中进行选择。不要喜欢这种mysql方式,因为它可能在某些服务器上也不起作用。sql注入呢?此查询是高度可验证的。您可以使用多种方法停止sql注入。您可以使用默认的sql转义函数,如htmlescape character,或使用准备好的语句来防止sql注入。@Marcel检查您使用的输入值名称@DhavalPurohit进行更改,然后如果他复制并尝试您的代码,这是有意义的。但是在Wordpress中使用WP查询是可取的,而不是mysql或预处理语句。哦,那么为什么不在代码中使用它呢@纳雷什库马尔
    <table>
    <form name="form1" method="post" action="">
    <strong>Please enter your information in order to download the Macs Cabs     
    App</strong>
    <tr><td>
    Name:</td><td><input name="Name" type="text" id="sName"></td></tr>
    Email Address:</td><td><input name="Email" type="text" id="sEmail"></td>   </tr>
    <tr><td>
    <input type="submit" name="Submit" value="Submit"></td></tr>
    </form></table>

    <?php
    $con = mysql_connect("localhost","root","root"); // ensure that your password in empty or root in your localhost
    if (!$con)
    {
       die('Could not connect: ' . mysql_error());
    }
    mysql_select_db("foundint_Sababa", $con);

    if(isset($_POST['Submit']))
    {
       // Previous Insert Query which has discrepency in form input names and Insert Values 
      //$sql="INSERT INTO `Users` (`sName`, `sEmail`) VALUES ('{$_POST['sName']}','{$_POST['sEmail']}')";

      // My new Query with corrected form input names for Input Values during POST.
        $sql = "INSERT INTO `Users`(`sName`, `sEmail`) VALUES ('".$_POST['Name']."','".$_POST['Email']."')";
        if (!mysql_query($sql,$con))
        {
            die('Error: ' . mysql_error());
        }
        echo "1 record added";
        $info = mysql_info(); echo $info;
        mysql_close($con);
    }