从表单到数据库的Php+数据

从表单到数据库的Php+数据,php,html,sql,database,forms,Php,Html,Sql,Database,Forms,我在尝试将数据从html表单保存到SQL数据库时遇到问题。我看到了一些其他帖子,但没有任何帮助。 这是表格代码: <?php require("connection.php"); echo '<html> <title>Υποβολή Βιογραφικού</title> </head></head> <body> <form method='Post' action='insert.php'

我在尝试将数据从html表单保存到SQL数据库时遇到问题。我看到了一些其他帖子,但没有任何帮助。 这是表格代码:

<?php

    require("connection.php");
echo '<html>
<title>Υποβολή Βιογραφικού</title>
</head></head>
<body>
    <form method='Post' action='insert.php'>
    Όνομα:<br>
    <input type="text" name="firstname">
    <br>
    Επώνυμο:<br>
    <input type="text" name="lastname">
    <br>
    Ηλικία:<br>
    <input type="number" name="age">
    <br>
    Σπουδές:<br>
    <textarea name="education" rows="10" cols="30"></textarea>
    <br>
    Επαγγελματική Εμπειρία:<br>
    <textarea name="experience" rows="10" cols="30"></textarea></textarea>
    <br>
    Ξένες Γλώσσες:<br>
    <textarea name="languages" rows="5" cols="10"></textarea>
    <br>
    Δυνατότητα Μετακίνησης:<br>
    <input type="text" name="travelling">
    <br>
    <br>
    <input type='submit' value='Υποβολή Βιογραφικού' />
    </form>




</body>
</html>';
?>
这就是将数据保存到数据库的代码

<?php

include("connection.php");

$firstname=$_POST["firstname"];
$lastname=$_POST["lastname"];
$age=$_Post["age"];
$education=$_Post["education"];
$experience=$_Post["experience"];
$languages=$_Post["languages"];
$travelling=$_Post["travelling"];

mysql_query("INSERT INTO cv (Onoma, Epwnimo, Hlikia, Spoudes,
EpagelmatikiEmpeiria, KsenesGlwsses, DinatotitaMetakinisis)
VALUES 
('".$firstname."', '".$lastname."', '".$age."', '".$education."', 
'".$experience."', '".$languages."', '".$travelling."')");
header("Location:index.php");

?>

我对使用php编程还不熟悉,所以错误可能是一些小问题,这里是一个问题。您所有的$\u Post必须是大写的$\u Post,因为它是超全局的

更多信息,请访问:

另外,您当前的代码对用户开放。使用,或者,它们更安全

我也不知道你为什么这样回显HTML

只需要做你的HTML,这样你就不必处理引号的问题,你用单引号来回应

然后把它们放在里面

正如Marc在回答中所说的,这将导致一个解析错误

使用RequireReconnection.php;返回到您的应用程序;。如果您没有在该页面内进行查询,并且您的查询作为操作处理程序位于另一个文件中,那么您不需要它,并且可以安全地删除它,只需使用标准的非回送HTML即可

您正在insert.php文件includeconnection.php中执行此操作

添加到文件的顶部,这将有助于查找错误

<?php 
error_reporting(E_ALL);
ini_set('display_errors', 1);

// rest of your code
还可以向mysql\u查询添加或删除mysql\u错误


旁注:错误报告只能在登台阶段进行,而不能在生产阶段进行。

基本PHP字符串:不能在字符串中使用与使用“定义字符串”相同的引号:

echo '<html>
     ^---start of string
<title>Υποβολή Βιογραφικού</title>
</head></head>
<body>
    <form method='Post' action='insert.php'>
                 ^---end of string
    Όνομα:<br>
这是一个明显的语法错误

绝对没有理由以这种方式使用多线回波。代码中没有变量,html没有任何动态特性。因此,只要打破PHP模式:

<?php
    require ...
?>
<html>
etc...

现在您不必担心PHP语法错误,因为在输出html时不再使用PHP。

将表单方法中的Post全部大写!POST和所有$\u POST都应该像$\u POST一样大写 也可以尝试删除所有双引号和句点,就像我在下面做的那样

mysql_查询插入cv Onoma、Epwnimo、Hlikia、Spoudes、, Epagelmatikiempiria,Ksenesglwses,恐龙 价值观 “$firstname”、“$lastname”、“$age”、“$education”,
"体验","语言","旅行",

旁注:您不需要回显完整的HTML。只需执行HTML即可。警告您的代码极易受到sql注入攻击!它可能有助于描述您在运行代码时实际观察到的内容。是否有一些字段保留在数据库中,而没有其他字段?不正确的数据是否持续存在?等等,你真是难以置信patient@F是的,我是费利克斯。一定是我心中的仙人掌种植者。这句话很好。
<?php
    require ...
?>
<html>
etc...