当前位置: 首页 > 知识库问答 >
问题:

我使用PHP和MySQL的超文本标记语言表单不工作

赵涵亮
2023-03-14

我试图创建一个简单的HTML表单,通过MySQL保存信息,但我有一些问题连接到数据库。我认为$db_selected=mysql_select_db(DB_NAME,$link);给了我问题。仅供参考DB_NAME是我要使用的数据库表。

超文本标记语言

<form action="demo.php" method="post">
          <div class="form-group">
            <label for="firstname">First Name:</label>
            <input type="text" class="form-control" id="firstname" name="first_name">
          </div>
          <div class="form-group">
            <label for="lastname">Last Name:</label>
            <input type="text" class="form-control" id="lastname" name="last_name">
          </div>
          <div class="form-group">
            <label for="dob">Date of birth:</label>
            <input type="password" class="form-control" id="dob" name="date_of_birth">
          </div>
          <div class="form-group">
            <label for="pob">Place of birth:</label>
            <input type="text" class="form-control" id="pob" name="place_of_birth">
          </div>
          <div class="form-group">
            <label for="government">Your Local government:</label>
            <input type="text" class="form-control" id="government" name="government">
          </div>
          <div class="form-group">
            <label for="qualifications">Qualifications:</label>
            <textarea class="form-control" rows="5" id="qualifications" name="qualifications"></textarea>
          </div>
          <div class="form-group">
            <label for="skills">Skills:</label>
            <textarea class="form-control" rows="5" id="skills" name="skills"></textarea>
          </div>
            <button type="submit" class="btn btn-default">Submit</button>
        </form>

我的PHP

<?php

define('DB_NAME', 'forms1');
define('DB_USER', 'c88888');
define('DB_PASSWORD', '*******');
define('DB_HOST', 's********.com');

$link = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD);


$db_selected = mysqli_select_db(DB_NAME, $link);

if (!$db_selected) {
    die('Can\'t use ' . DB_NAME . ': ' . mysqli_error());
}

$value = $_POST['first_name'];
$value2 = $_POST['last_name'];
$value3 = $_POST['date_of_birth'];
$value4 = $_POST['place_of_birth'];
$value5 = $_POST['government'];
$value6 = $_POST['qualifications'];
$value7 = $_POST['skills'];

$sql = "INSERT INTO demo (first_name, last_name, date_of_birth, place_of_birth, government, qualifications, skills) VALUES ('$value', '$value2', '$value3', '$value4', '$value5', '$value6', '$value7')";

if (!mysqli_query($sql)) {
    die('Error: ' . mysqli_error());
}

mysqli_close();
?>

共有3个答案

韦志新
2023-03-14

将SQL查询写入字符串时,请使用倒勾(`)分隔数据库字段。

您在单个引号中使用了'$value',这意味着PHP将其理解为文本$value值,而不是变量。

您应该将查询更改为:

$sql = "INSERT INTO `demo` (`first_name`, `last_name`, `date_of_birth`, `place_of_birth`, `government`, `qualifications`, `skills`)
        VALUES ('" . $value . "', '" . $value2 . "', '" . $value3 . "', '" . $value4 . "', '" . $value5 . "' , '" . $value6 . "', '" . $value7 . "')"; 
范安歌
2023-03-14

尝试将DB_HOST指定给“localhost”,因为几乎每台服务器都将其数据库存储在localhost本身中。请尝试以下代码连接到您的数据库,并确保提供正确的数据库名称。

<?php
header("Access-Control-Allow-Origin: *");

define('DB_NAME', 'name');
define('DB_USER', 'user');
define('DB_PASSWORD', '****');
define('DB_HOST', 'localhost');

$dbc = mysqli_connect(DB_HOST, DB_USER, DB_PASSWORD, DB_NAME);

if(!$dbc){
   die('could not connect: ' .mysql_error());
}

?>
杜正奇
2023-03-14

只需在db_selected的地方更改代码:

$db_selected = mysqli_select_db($link, DB_NAME);

在将值输入数据库之前,请确保使用预先准备好的语句或mysqli\u real\u escape\u string()对值进行转义,最好使用括号编写值,如(“{$value1}”,“{$value2}”)

 类似资料:
  • 我正在使用ITextRenderer从html生成PDF。然而,我得到以下异常: 你能帮帮我吗? 任何帮助都将不胜感激。 先谢谢你。

  • 我的应用程序中有一个webView。webView最初会打开一个我创建的HTML页面,页面上有几个按钮。这些按钮执行各种任务(我正在尝试学习如何使用webView),例如:1)显示android toast,2)显示javascript警报,3)振动手机,4)显示当前地理位置,5)在webView中打开谷歌地图。 最后一个坏了。我搜索过这个网站和其他很多网站,但没有找到一个有效的解决方案。 我相当

  • 我到处找,到处找。我已经看到了我将要发布的PHP代码中的许多问题,但没有看到任何与我所看到的特定问题相关的问题。 这是我的问题-两行($values/$required),其中我有“name”,“email”,“subject”,“message” 我想在上面加上“电话”。(即“姓名”、“电子邮件”、“电话”、“主题”、“信息”) 如果我把它添加到两行中的一行(不管是哪一行),我仍然可以提交表格,

  • 我是新来的。我想解析html,但问题是我们必须在中指定的URL,我将在运行时从其他页面响应此URL。有没有办法将收到的网址传递到中?我读过这样的东西: 但是我不知道如何使用它。我很想知道是否有其他方法比jsoup更好。

  • 对于上面的html内容,我如何使用Jsoup解析并获取文本 当我使用 我得到了这样的东西

  • 我将html表格从网页复制到excel,并尝试使用下面的代码,但没有结果。请就如何解决这个问题提出建议。我做了所有的实验,但没有得到正确的结果。