【问题标题】:php script for html form is not working用于 html 表单的 php 脚本不起作用
【发布时间】:2018-05-23 08:45:05
【问题描述】:

大家好,我有这两个脚本,用于在我的 PC 上用 HTML 表单填充数据库表。 HTML 代码完美运行,但 php 无法正常运行,我已经指定了所有内容,但它不起作用,当我点击提交时,浏览器只会弹出一个下载选项,但没有其他...

<html>
<head>
<tittle>
<h1 > <b> FORMAT FOR TECHNICAL ISSUES
<link rel="stylesheet" href="/var/www/html/proyecto/css/styles.css">
 </b> </h1>
</tittle>
<hr> </hr>
</head>
<body>
<div>
 <img src="logo.png" width=100%   /img>
<hr> </hr>
<form method="POST" action="">   
<input type="text" placeholder="NOMBRE" name="Nombre"  maxlenght="30" size="20px" id="nombre"  > 
<input type="text" name="Extension"  placeholder=EXTENSION  maxlength="5" id="extension">
<br>
<hr> </hr>
<br>
<br>
<h2> CAMPAIGN /CAMPAÑA </h2>
<br>
<label for="Campaign"> Select your campaign:</label>
<select name="Campaign" id="campaign"  >Campaign
    <option value="Procall">Procall</option>
    <option value="Tigo">Tigo</option>
    <option value="Spanish">Spanish</option>
</select>
<hr> </hr>
<h2> KIND OF FAILURE </h2>
<label for="Tipo de incidente">Select the type of incident:</label>
<select id="incident"  name="incidente"  placeholder="Tipo de incidente">incident
    <option value="Slow Computer">Slow Computer</option>    
    <option value="Headset fail"> Headset Fail </option>
    <option value="Zoiper Issue">Zoiper Issue </option>
       <option value="Crm Issue">Crm Issue </option>
       <option value="Spark Issue">Spark Issue </option>
       <option value="Vc Dialer Issue">VC Dialer Issue </option>
       <option value="Network Issue">Network Issue </option>
</select>
<input type"text" id="description"  name="Description" placeholder=DESCRIPTION style="width:300px;height:100px">
<br></br>
<h2>FAILURE DATE </h2>
<label for="failure date"> Enter the day and hour when failure occurred :</label>
<input name="failure_date"   type="date-time-local" placeholder="yyyy/mm/dd/hh/mm"  id="failure date" min="2018-05-01T08:30" max="2018-12-30T22:30"  >
<br>
<hr></hr>
<label for="did you lose a call?" id="lost_call" >Did you lose any call?:</label>
<br>
 <input type="radio" name="lost call" value="yes " id="lost_call" > Yes , i lost a call.
<br> 
<input type="radio" name="lost_call" value="no" id="lost_call" >No i have not lost any call
<br
<br>
<label id="lost docmuent"  for="did you lose any document?"> Did you lose any document or information?:</label>
<br>
<input type="radio" name="document" value="yes"> Yes i lost one or more documents
<br>
<input type="radio" name="document" value="no"> No have not lost any document. 
<br>
<br>
<label for="did you have to log out?" id="logout" > Did you have to logout?:</label>
<br>
<input type="radio" name="logout" value="yes">Yes i had to logout
<br>
<input type="radio" name="logout" value="no">no  i didn't have  to logout
<br>
<br>
<br>
<br>
<input type="submit">
 </form>
 </div>
 </body>
 </html>

这里是操作的php脚本并连接到sql数据库

<?php
 $con = mysql_connect("localhost","root","m0l0t0v" );
 if (!$con) {
      die('Could not connect: ' . mysql_error());
}
mysql_select_db("it", $con);
$sql="INSERT INTO tec-issues (Nombre,Extension ,Campaign ,incidente,Description,failure_date,lost_call,document,logout )
VALUES
('$_POST[Nombre]', '$_POST[Extension]', '$_POST[Campaign]', '$_POST[incidente]', '$_POST[Description]', '$_POST[failure_date]', '$_POST[lost_call]', '$_POST[document]', '$_POST[logout]' )";
if (!mysql_query($sql,$con)) {
      die('Error: ' . mysql_error());
} 
echo "1 record added";
mysql_close($con)
?>

请帮助我一切都正确,但它就是不工作

【问题讨论】:

  • 您能否更具体地说明什么是“不起作用”?
  • 我创建了一个数据库和一个表,我在 php 脚本中指定插入值,但是当我填写表单的字段时,只打开一个弹出窗口,其中提供下载选项脚本,但它没有在表上写入任何内容,数据库保持为空
  • 打开错误报告,检查你的日志,做其他基本的调试事情......
  • 当你完成这项工作时,你将对 SQL 注入持开放态度。不要再使用mysql_* 函数了。

标签: php html mysql


【解决方案1】:

检查 mysql_select_db 的语法,它应该是 mysql_select_db($con,"dbname") 并且请使用 mysqli 前缀而不是 mysql,因为这样更安全。

我建议对从 POST 或 GET 获得的每个数据使用 msqli_escape_string 以防止 sql 注入

【讨论】:

  • 它也不起作用,你说的方式让我更困惑
  • 这是错误的。 OP 使用的是mysql_,而不是mysqli_。连接以mysql_ 排在第二位。 php.net/manual/en/function.mysql-select-db.php
  • 你的数据库名称是“它”吗?
  • 是的,它被命名为“它”
  • 没有 PHP 问题。由于 OP 的行为是 when i give click on submit the browser just pop ups a download option,因此 PHP 没有像 PHP 一样被处理。
猜你喜欢
  • 2013-09-12
  • 1970-01-01
  • 2014-04-12
  • 2013-06-04
  • 2018-07-08
  • 1970-01-01
  • 1970-01-01
  • 2011-01-13
相关资源
最近更新 更多