猿问

如何根据我的代码将复选框数据保存到数据库中,知道吗?

我已经谷歌并按照视频教程中的一些步骤操作,但似乎我在复选框中的所有数据都无法发送到数据库中。任何的想法?我对 PHP 代码完全陌生。如果能帮上忙,万分感谢


<?php

$sqlservername = "127.0.0.1";

$sqlusername = "root";

$sqlpassword = "";

$sqldbname ="test";


$conn = new mysqli($sqlservername, $sqlusername, $sqlpassword, $sqldbname);


if($conn->connect_error){

    die("Connection fail");

}


session_start();




if(isset($_POST['li_submit'])){

    $_SESSION['li_username'] = $_POST['username'];

    $li_username = $_SESSION['li_username'];    

}   


if(isset($_POST['submit'])){


$id = $username = $password = $location = $description = $employeeNo = $telephoneNo = $designation =  $place = $area = $date = $time = $taken = $management = $action = $remarks = $surveyA = "";


if(isset($_POST['username'])){

    $id = uniqid($prefix='u_');

    $username = $_POST['username'];


}

if(isset($_POST['password'])){

    $password = $_POST['password'];

}

if(isset($_POST['location'])){

    $location = $_POST['location'];

}

if(isset($_POST['description'])){

    $description = $_POST['description'];

}


if(isset($_POST['employeeNo'])){

    $employeeNo = $_POST['employeeNo'];

}

if(isset($_POST['telephoneNo'])){

    $telephoneNo = $_POST['telephoneNo'];

}

if(isset($_POST['designation'])){

    $designation = $_POST['designation'];

}

if(isset($_POST['place'])){

    $place = $_POST['place'];

}

if(isset($_POST['area'])){

    $area = $_POST['area'];

}

if(isset($_POST['date'])){

    $date = $_POST['date'];

}

if(isset($_POST['time'])){

    $time = $_POST['time'];

}

if(isset($_POST['taken'])){

    $description = $_POST['taken'];

}

if(isset($_POST['management'])){

    $management = $_POST['management'];

}


if(isset($_POST['action'])){

    $action = $_POST['action'];

}

if(isset($_POST['remarks'])){

    $remarks = $_POST['remarks'];

}

if(isset($_POST['surveyA'])){

    $surveyA = $_POST['surveyA'];

    $A = implode (",",$surveyA);

}


www说
浏览 268回答 3
3回答

30秒到达战场

这只是如何获取复选框值的示例假设这是您的复选框:<input type="checkbox" name='lang' value="PHP"> PHP <br/>&nbsp;&nbsp;and you can get by using this "$_POST['lang']".

哔哔one

试试这个<?php$sqlservername = "127.0.0.1";$sqlusername = "root";$sqlpassword = "";$sqldbname ="test";$conn = new mysqli($sqlservername, $sqlusername, $sqlpassword, $sqldbname);if($conn->connect_error){die("Connection fail");}session_start();if(isset($_POST['li_submit'])){$_SESSION['li_username'] = $_POST['username'];$li_username = $_SESSION['li_username'];&nbsp;}&nbsp;if(isset($_POST['submit'])){$id = $username = $password = $location = $description = $employeeNo = $telephoneNo = $designation = $place = $area = $date = $time = $taken = $management = $action = $remarks = $surveyA = "";if(isset($_POST['username'])){$id = uniqid($prefix='u_');$username = $_POST['username'];}if(isset($_POST['password'])){$password = $_POST['password'];}if(isset($_POST['location'])){$location = $_POST['location'];}if(isset($_POST['description'])){$description = $_POST['description'];}if(isset($_POST['employeeNo'])){$employeeNo = $_POST['employeeNo'];}if(isset($_POST['telephoneNo'])){$telephoneNo = $_POST['telephoneNo'];}if(isset($_POST['designation'])){$designation = $_POST['designation'];}if(isset($_POST['place'])){$place = $_POST['place'];}if(isset($_POST['area'])){$area = $_POST['area'];}if(isset($_POST['date'])){$date = $_POST['date'];}if(isset($_POST['time'])){$time = $_POST['time'];}if(isset($_POST['taken'])){$description = $_POST['taken'];}if(isset($_POST['management'])){$management = $_POST['management'];}if(isset($_POST['action'])){$action = $_POST['action'];}if(isset($_POST['remarks'])){$remarks = $_POST['remarks'];}if(isset($_POST['surveyA'])){$surveyA = $_POST['surveyA'];$A = implode (",",$surveyA);}if(isset($_FILES['profile_pic'])){$target_dir = "IMG_UPLOAD/";$target_file = basename($_FILES['profile_pic']["name"]);$file_type = strtolower(pathinfo($target_file,PATHINFO_EXTENSION));$target_path = $target_dir . uniqid($prefix='img.'). "." .$file_type;if(!move_uploaded_file($_FILES['profile_pic']['tmp_name'], $target_path)){$target_path = "";}}&nbsp;$sql_insert = $conn->prepare("insert into user_info(username, password, location, description, image_path, employeeNo, telephoneNo, designation, place, area, date, time, taken, management, action, remarks, surveyA) values (?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?,?)");$sql_insert->bind_param("sssssssssssssssss",$username, $password, $location, $description, $target_path, $employeeNo, $telephoneNo,$designation, $place, $area, $date, $time, $taken, $management, $action, $remarks, $A);$sql_insert->execute();$sql_insert->close();}$conn->close();您不需要在查询中定义 id 因为它会在数据库中自动递增。并且还使用 $A 而不是 $surveyA。并假设这是您的复选框:PHP,您可以使用此“$_POST['lang']”来获取。我希望这对您的要求有所帮助

BIG阳

你应该插入$A,而不是$surveyA。$surveyA是一个包含复选框值的数组,$A是由implode().在这里给它一个默认值:$id&nbsp;=&nbsp;$username&nbsp;=&nbsp;$password&nbsp;=&nbsp;$location&nbsp;=&nbsp;$description&nbsp;=&nbsp;$employeeNo&nbsp;=&nbsp;$telephoneNo&nbsp;=&nbsp;$designation&nbsp;=&nbsp;&nbsp;$place&nbsp;=&nbsp;$area&nbsp;=&nbsp;$date&nbsp;=&nbsp;$time&nbsp;=&nbsp;$taken&nbsp;=&nbsp;$management&nbsp;=&nbsp;$action&nbsp;=&nbsp;$remarks&nbsp;=&nbsp;$A&nbsp;=&nbsp;"";然后在bind_param()通话中使用它。$sql_insert->bind_param("sssssssssssssssss",&nbsp;$id,&nbsp;$username,&nbsp;$password,&nbsp;$location,&nbsp;$description,&nbsp;$target_path,&nbsp;$employeeNo,&nbsp;$telephoneNo,$designation,&nbsp;$place,&nbsp;$area,&nbsp;$date,&nbsp;$time,&nbsp;$taken,&nbsp;$management,&nbsp;$action,&nbsp;$remarks,&nbsp;$A);
随时随地看视频慕课网APP
我要回答