나는 작동하지 않는 문에 꽤 표준 MySQL 삽입문을 가지고있다. 이 페이지에 HTML 양식을 게시하고 있으며 정보를 번역하고 표 (pending_jobs)에 삽입하고 있습니다. 그것은 처음으로 일했고 그 이후로 일하지 않았습니다. 나는이 행을 업데이트하려고하지 않고이 코드가 제출 될 때마다 새로운 것을 추가하여 매우 간단 할 것이라고 생각했습니다. 여기 코드는 : 그것은 profile.php 페이지로 리디렉션됩니다INSERT INTO 처음으로 MySQLi 문이 작동하지 않는다.
<?php
include('includes/connect.php');
$id=$mysqli->real_escape_string($_POST['id']);
$sql = "SELECT * FROM users WHERE id='$id'";
$result = $mysqli->query($sql);
$row = mysqli_fetch_array($result);
$user_id = $_SESSION['user_id'];
$company_name = $row['company_name'];
$date_registered = $row['date_registered'];
$job_title=$mysqli->real_escape_string($_POST['jobtitle']);
$job_description=$mysqli->real_escape_string($_POST['jobdescription']);
$salary=$mysqli->real_escape_string($_POST['salary']);
$industry_sector=$mysqli->real_escape_string($_POST['industry']);
$number_people=$mysqli->real_escape_string($_POST['num_people']);
if(isset($_POST['payment']) && $_POST['payment']=='yes'){
$payment_received = 'Yes';
}
else{
$payment_received = 'No';
}
$sql_add = "INSERT INTO pending_jobs (company_name, job_title) VALUES ('$company_name', '$job_title')";
$result_add = $mysqli->query($sql_add);
if(isset($result_add)){
session_start();
$id = $row['id'];
$_SESSION['user_id'] = $user_id;
header('location:profile.php?id='.$id);
} else {
echo "<script>alert('".$job_title."');</script>";
}
?>
그래서 나는 그 $의 result_add이 실제로 겪고 알고 있지만 데이터베이스에서 테이블을 검사 할 때 새로운 행이 없습니다. 왜 새로운 행을 만들지 않을지에 대한 아이디어가 있습니까?
흥미로운 사례 ... 필드를 '고유'로 설정 했습니까? 그것은 침묵하는 실패를 설명 할 것입니다. 오류를 가져 오려고 할 수 있습니다. http://php.net/manual/en/mysqli.error.php –