mysql insert stement에서 이름을 id로 바꿉니다.

로베르토

두 개의 테이블이 있습니다.

persons(person_id, date_entered, first_name, country_id)

countries(country_id, country_name)

국가의 Country_id는 사람의 country_id에있는 외래 키입니다.

나는 사람의 이름과 국적을 묻는 POST 양식이 있고 그 정보를 사람 테이블에 입력합니다. 국적 필드는 국가 테이블의 조회이며 사용자에게 국가 이름의 드롭 다운 목록을 제공합니다. 제출 버튼은 데이터를 개인 테이블로 보냅니다.

문제는 국적 드롭 다운 목록이 국가 이름을 생성하지만 실제로 해당 국가의 ID를 people 테이블로 보내야한다는 것입니다. 나는 국가 테이블에서 데이터를 가져와 country_name을 국적 필드와 일치시킨 다음 ID를 추출해야한다고 생각하지만 확실하지 않습니다 ...

마지막으로 질문은 드롭 다운 목록의 국가 이름을 해당 ID와 일치시키고 INSERT 쿼리에 넣는 방법입니다.

도움을 주시고 미리 감사드립니다!

다음은 데이터를 DB로 보내는 데 사용하려는 작동하지 않는 코드입니다.

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

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

$data_missing = array();

if(empty($_POST['first_name'])){
$data_missing[] = 'First Name';
} else {
$f_name = trim($_POST['first_name']);
}

if(empty($_POST['nationality'])){
$data_missing[] = 'Nationality';
} else {
$nationality = trim($_POST['nationality']);
}

if(empty($data_missing)){

require_once('includes/db.php');

$get_countries = "SELECT * from countries";

$query = "INSERT INTO persons (candidate_id, date_entered, first_name, country_id) VALUES
(NULL, NOW(), ?, ?)";

$stmt = mysqli_prepare($con, $query);

//  i Integers
//  d Doubles
//  b Blobs
//  s Everything Else

mysqli_stmt_bind_param($stmt, "si", $f_name, $nationality);

mysqli_stmt_execute($stmt);
$affected_rows = mysqli_stmt_affected_rows($stmt);
if($affected_rows == 1){
$a="Candidate added!";
echo
"<script>alert('$a'); window.location.href='addcandidate.php';</script>";

mysqli_stmt_close($stmt);

mysqli_close($dbc);

}
} else {

echo 'You need to enter the following data<br />';

foreach ($data_missing as $missing) {

echo "$missing<br />";
}
}
}

?>
Coderodour

다음과 같이 국가 드롭 다운을 만들어야합니다 .

<?php
  $countries = "SELECT * from countries";
  $results = $mysqli->query($sql);

  echo "<select name='country_code'>";
  foreach($result->fetch_assoc() as $row){
    echo "<option value='".$row['country_id']."'>".$row['country_name']."</option>";
  }
  echo "</select>";
?>

그런 다음의 값을 가져 오면 해당 $_POST['country_code']국가 테이블의 국가 ID가됩니다.

이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.

침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제

에서 수정
0

몇 마디 만하겠습니다

0리뷰
로그인참여 후 검토

관련 기사

분류에서Dev

nmap에서 반환 한대로 장치 ID 이름을 바꿉니다.

분류에서Dev

cakePHP 2.X로 find ( 'all')에서 모델 이름을 바꿉니다.

분류에서Dev

Mysql select * 문을 가져 와서 삭제 문으로 바꿉니다.

분류에서Dev

mysql은 체크에 따라 열을 특정 텍스트로 바꿉니다.

분류에서Dev

talbe 1에서 모든 데이터를 선택하고 table2 MySQL에있는 경우 테이블 2의 값을 id로 바꿉니다.

분류에서Dev

fastapi의 응답 헤더에서 서버 이름을 가짜 서버 이름으로 바꿉니다.

분류에서Dev

zip 파일에서 추출 된 파일의 이름을 zip 파일 자체의 이름으로 바꿉니다.

분류에서Dev

MYSQL : 여러 테이블 조인-여러 사용자 ID를 사용자 이름으로 바꿉니다.

분류에서Dev

문자열 파이썬에서 'Null'을 Null로 바꿉니다.

분류에서Dev

서버가 이미지를 응답으로 보내고 서비스 전에 이름을 바꿉니다.-Symfony 2

분류에서Dev

Maven은 중앙 저장소에서 다운로드 할 때 jar 이름을 바꿉니다.

분류에서Dev

MySQL은 열을 행으로 바꿉니다.

분류에서Dev

모든 하위 범주에서 공백이있는 파일 이름을 밑줄로 바꿉니다.

분류에서Dev

URL 파일 이름을 새 이름으로 바꿉니다.

분류에서Dev

Unix에서 동적 파일 이름을 사용하여 여러 파일을 다른 디렉토리로 이동하면서 이름을 바꿉니다.

분류에서Dev

AST python의 표현식에서 변수 이름을 실제 값으로 바꿉니다.

분류에서Dev

파일에서 사용자 이름을 제거하고 증분 번호로 바꿉니다.

분류에서Dev

NULL을 MYSQL의 이전 날짜 다음 7 행으로 바꿉니다.

분류에서Dev

mysql에서 이름 열을 동일한 ID 값으로 바꾸기

분류에서Dev

예외 : format = @에서 r \ n을 \ n으로 바꿉니다.

분류에서Dev

Android Studio에서 정규식을 대문자로 바꿉니다.

분류에서Dev

팬더에서 연속 0을 NaN으로 바꿉니다.

분류에서Dev

C #에서 \ n을 <br/>로 바꿉니다.

분류에서Dev

Laravel 전화 번호에서 '0'을 1로 바꿉니다.

분류에서Dev

pandas에서 열의 -ve 값을 NaN으로 바꿉니다.

분류에서Dev

Python에서 네 번째 공백을 \ n으로 바꿉니다.

분류에서Dev

열 값을 숫자에서 텍스트로 바꿉니다.

분류에서Dev

Notepad ++에서 \ r \ n을 새 줄로 바꿉니다.

분류에서Dev

href의 공백을 PHP에서 % 20으로 바꿉니다.

Related 관련 기사

  1. 1

    nmap에서 반환 한대로 장치 ID 이름을 바꿉니다.

  2. 2

    cakePHP 2.X로 find ( 'all')에서 모델 이름을 바꿉니다.

  3. 3

    Mysql select * 문을 가져 와서 삭제 문으로 바꿉니다.

  4. 4

    mysql은 체크에 따라 열을 특정 텍스트로 바꿉니다.

  5. 5

    talbe 1에서 모든 데이터를 선택하고 table2 MySQL에있는 경우 테이블 2의 값을 id로 바꿉니다.

  6. 6

    fastapi의 응답 헤더에서 서버 이름을 가짜 서버 이름으로 바꿉니다.

  7. 7

    zip 파일에서 추출 된 파일의 이름을 zip 파일 자체의 이름으로 바꿉니다.

  8. 8

    MYSQL : 여러 테이블 조인-여러 사용자 ID를 사용자 이름으로 바꿉니다.

  9. 9

    문자열 파이썬에서 'Null'을 Null로 바꿉니다.

  10. 10

    서버가 이미지를 응답으로 보내고 서비스 전에 이름을 바꿉니다.-Symfony 2

  11. 11

    Maven은 중앙 저장소에서 다운로드 할 때 jar 이름을 바꿉니다.

  12. 12

    MySQL은 열을 행으로 바꿉니다.

  13. 13

    모든 하위 범주에서 공백이있는 파일 이름을 밑줄로 바꿉니다.

  14. 14

    URL 파일 이름을 새 이름으로 바꿉니다.

  15. 15

    Unix에서 동적 파일 이름을 사용하여 여러 파일을 다른 디렉토리로 이동하면서 이름을 바꿉니다.

  16. 16

    AST python의 표현식에서 변수 이름을 실제 값으로 바꿉니다.

  17. 17

    파일에서 사용자 이름을 제거하고 증분 번호로 바꿉니다.

  18. 18

    NULL을 MYSQL의 이전 날짜 다음 7 행으로 바꿉니다.

  19. 19

    mysql에서 이름 열을 동일한 ID 값으로 바꾸기

  20. 20

    예외 : format = @에서 r \ n을 \ n으로 바꿉니다.

  21. 21

    Android Studio에서 정규식을 대문자로 바꿉니다.

  22. 22

    팬더에서 연속 0을 NaN으로 바꿉니다.

  23. 23

    C #에서 \ n을 <br/>로 바꿉니다.

  24. 24

    Laravel 전화 번호에서 '0'을 1로 바꿉니다.

  25. 25

    pandas에서 열의 -ve 값을 NaN으로 바꿉니다.

  26. 26

    Python에서 네 번째 공백을 \ n으로 바꿉니다.

  27. 27

    열 값을 숫자에서 텍스트로 바꿉니다.

  28. 28

    Notepad ++에서 \ r \ n을 새 줄로 바꿉니다.

  29. 29

    href의 공백을 PHP에서 % 20으로 바꿉니다.

뜨겁다태그

보관