[英]Insert Form data to MySQL in Php
我在HTML中有這樣的表格:
<!--HTML Form input--> <div class = "login-block"> <form id="form1" style="display: block" method="POST" action="Insert.php"> <!--Input link api--> <b>Link: </b><input type="text" id="link" name="apilink"><br> <br> <!--Chart Type--> <b>Chart Type:</b> <label class="custom-select"> <select id="chartType" name="chartType"> <option value="">Select</option> <option value="pie">Pie Chart</option> <option value="column">Column Chart</option> <option value="bar">Bar Chart</option> </select> </label> <br><br> <!--Button create chart--> <div class ="wrapper"> <button type="button" name="create" onClick="drawChart();">Create</button> <br><br> </div> </form> </div>
我創建了一個php文件,以將哪種用戶類型插入到MySQL數據庫中,這是我的Insert.php:
<!--Insert Form Data to MySQL-->
<?php
$con = mysql_connect("localhost","root","123456");
if (!$con)
{
die('Could not connect: ' . mysqli_error());
}
mysql_select_db("activiti_report");
if(isset($_POST['create'])) {
$sql = "INSERT INTO chartinfo (link, typeChart) VALUES ('$apilink', '$chartType')";
$result = mysql_query($sql);
}
?>
但是,當我運行頁面時,鍵入一些文本並選擇下拉列表后,我按創建按鈕,但沒有任何反應。
更新:
您可以使用SQL注入。 我建議您使用准備好的語句。
<?php
if(isset($_POST['create'])){
$chartType = $_POST['chartType'];
$apilink = $_POST['apilink'];
$conn = new mysqli("localhost", "root", "123456", "activiti_report");
if ($conn->connect_error) {
die("Connection failed: " . $conn->connect_error);
}
$stmt = $conn->prepare("INSERT INTO chartinfo (link, typeChart) VALUES (?,?)");
$stmt->bind_param("ss", $apilink, $chartType);
$stmt->execute();
$stmt->close();
$conn->close();
}else{
echo "Form not sended";
}
看來您首先沒有從表單中獲取數據。
要獲取實際數據,您需要像這樣從帖子中獲取它們。
$apilink = $_POST["apilink"];
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.