繁体   English   中英

在MySQL数据库中插入数据

[英]Inserting data in Mysql database

我已经创建了一个下拉列表以及类别和名称的输入类型,但是在两种情况下,当我单击下一步时,它都将我定向到另一个页面,但是没有任何内容保存在数据库中。 company_account是必须在其中插入数据的表名,它具有四行id,category,cname,about

<?php include( "./inc/header.inc.php");
 require( "./inc/connect.inc.php"); ?>

<div>
<form action = "payment.php" method= "POST">
<select id="category" name="category" class="old_ui_selector">
    <option value="0" selected="1">Choose your category</option>
    <option value="">Accounting Firm</option>
    <option value="">Agriculture</option>
    <option value="">Automotive</option>
    <option value="">Aerospace/Defence</option>
    <option value="">Building Material</option>

</select>
</div>
<br>
<input type = "text" name="cname" placeholder= "Name"/>
<br><br>
By clicking Next you agree to the <a href="terms.php" style="color: #008781">Terms and Conditions.</a>
<br>
<input type = "submit" name="comp" value="Next"/>
</form>

<?php
if(isset($_POST['comp']))
{
    $category=$_GET['category'];
    $cname = $_POST['cname'];
    $ins=mysql_query("insert into company_account (category) values ('$category')");
    $insert = mysql_query("INSERT INTO company_account VALUES ('','$category','$cname','$about')");
    if($ins)
        if($insert)
    {
        echo "<br>".$category."inserted";
    }
    else
    {
        echo mysql_error();
    }
}
?>

您那里有一些问题,首先是您正在使用mysql,请将其更新为mysqli或更好的是PDO。

其次,您的表单是使用POST提交的,但是您尝试使用GET来收集类别。

您还需要提供不带IP和密码的connect.inc.php内容,以便人们可以查看配置。

我建议您在继续阅读之前,先阅读这里内容,然后再进行进一步的了解。

https://code.tutsplus.com/tutorials/why-you-should-be-using-phps-pdo-for-database-access--net-12059

祝你好运。

注意: mysql :此扩展在PHP 5.5.0中已弃用,在PHP 7.0.0中已被删除。 相反,应使用MySQLiPDO_MySQL扩展。

您已经提供了form action ,在单击“提交”按钮后将进行重定向。

您已在同一页面本身中编写了INSERT STATEMENT ,这对您甚至不起作用。

首先删除action="" ,然后根据保存的数据将其重定向。

HTML:

<form action = "" method= "POST">
</form>

并且您的“选项”值缺少值,并且在提交表单后,这些值将不会输入到数据库中。 因此,您需要执行以下操作。

更换:

<option value="">Accounting Firm</option>

带有:

<option value="Accounting Firm">Accounting Firm</option>

用于插入的PHP代码:

您没有提供插入值表值,因此插入代码将不起作用。

句法:

INSERT INTO TABLENAME(`columnname1`,`columnname2`,.....) VALUES(VALUE1,VALUE1,....)

因此,建议您对操作使用正确的表结构,然后插入数据。

插入查询:

$insert = mysql_query("INSERT INTO company_account(`category`,`name`,`about`) VALUES ('$category','$cname','$about')");

您可以insert all in the single query本身,然后使用标题位置进行重定向。

保存数据后,使用header Location重定向到特定页面。

header('location : http://www.google.co.in');

PHP部分:

<?php
if(isset($_POST['comp']))
{
    $category=$_POST['category'];
    $cname = $_POST['cname'];
    $insert = mysql_query("INSERT INTO company_account(`category`,`name`,`about`) VALUES ('$category','$cname','$about')");
    $rows = mysql_affected_rows();
    if($rows=0)
    {
        echo mysql_error();
    }
    else
    {
        ob_start(); // Refresh the Output Buffer
        header('location: http://www.google.co.in');
        exit;
    }
}
?>

注意:您在插入语句中使用的$about ,但是没有值提供给插入语句。 请检查一下。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM