首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >要发布到数据库表中的表单

问要发布到数据库表中的表单
EN

Stack Overflow用户
提问于 2021-11-16 16:52:22
回答 1查看 38关注 0票数 0

我正在尝试制作一个表单,使用index.php和connection.php将index.php输入发布到我的数据库表中。此外,我尝试使用bind_param将除电话号码(puhelinnumero)以外的所有内容都指定为字母格式,但它给出了以下错误:

​

​

这是index.php。

代码语言:javascript
复制
<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8">
        <link rel="stylesheet" href="style.css">
    </head>
    <body>
        <div class="lomake-container">
            <form action="connection.php" method="POST">
                <h2>Ilmoittautumis lomake</h2>

                <div class="lomake-block">
                    <label for ="nimi">Etunimi</label>
                    <input type="text" name="etunimi" id="nimi" placeholder="Etunimi">
                </div>

                <div class="lomake-block">
                    <label for ="sukunimi">Sukunimi</label>
                    <input type="text" name="sukunimi" placeholder="Sukunimi">
                </div>

                <div class="lomake-block">
                    <label for="male">Mies</label>
                    <input type="radio" id="male" name="sukupuoli">
                </div>

                <div class="lomake-block">
                    <label for="female">Nainen</label>
                    <input type="radio" id="female" name="sukupuoli">
                </div>

                <div class="lomake-block">
                    <label for="other">Muu</label>
                    <input type="radio" id="other" name="sukupuoli">
                </div>

                <div class="lomake-block">
                    <label for ="sähköposti">Sähköposti</label>
                    <input type="text" name="sähköposti" id="sähköposti" placeholder="Sähköposti">
                </div>

                <div class="lomake-block">
                    <label for ="salasana">Salasana</label>
                    <input type="text" name="salasana" id="salasana" placeholder="Salasana">
                </div>

                <div>
                    <label for ="puhelinnumero">Puhelin numero</label>
                    <input type="text" name="puhelinnumero" id="puhelinnumero" placeholder="Puhelin num.">
                </div>

                <input type="submit" value="Lähetä">

            </form>
        </div>
    </body>
    
</html>

这是connection.php

代码语言:javascript
复制
<?php

$etunimi = $_POST["etunimi"];
$sukunimi = $_POST["sukunimi"];
$sukupuoli = $_POST['sukupuoli'];
$sähköposti = $_POST['sähköposti'];
$salasana = $_POST['salasana'];
$puhelinnumero = $_POST['puhelinnumero'];

$servername = "localhost";
$username = "root";
$password = '';
$database = 'palvelu';


$conn = new mysqli($servername, $username, $password, $database);

// Check connection
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}else {
    echo "Yhteys onnistui";
    $stmt = $conn->prepare("insert into lomake($etunimi, $sukunimi, $sukupuoli, $sähköposti, $salasana, $puhelinnumero)
    values(?, ?, ?, ?, ?, ?)");
}
$stmt->bind_param("sssssi",$etunimi, $sukunimi, $sukupuoli, $sähköposti, $salasana);
echo "onnistui jea";
$stmt->execute();
$stmt->close();
$conn->close();




?>

下面是表格:

​

​

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-11-16 16:56:38

您不能参数化列名,但无论如何,我非常确定这不是您的实际意图,而且您可能稍微误解了如何构建INSERT查询。您需要指定要插入的列名。当MySQL收到查询时,您当前尝试用来代替列名的变量值将通过?占位符自动同化到查询中。

此外,您还忘记将最后一个值放入bind_param命令中。

最后,你的逻辑有一点小缺陷--如果连接失败,你的代码就会死掉。不需要else。如果它没有死,那就继续吧。

试着这样做:

代码语言:javascript
复制
if ($conn->connect_error) {
  die("Connection failed: " . $conn->connect_error);
}

echo "Yhteys onnistui";
$stmt = $conn->prepare("insert into lomake(`nimi`, `sukunimi`, `gender`, `email`, `password`, `number`) values(?, ?, ?, ?, ?, ?)");
$stmt->bind_param("sssssi",$etunimi, $sukunimi, $sukupuoli, $sähköposti, $salasana, $puhelinnumero);
echo "onnistui jea";
$stmt->execute();
$stmt->close();
$conn->close();

附注:

以下是INSERT的MySQL文档参考:https://dev.mysql.com/doc/refman/8.0/en/insert.html

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69993107

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档