PHP 설명서에서 PDO :: lastInsertId에 대한 내용을 읽었지만 일부 테스트를 마친 후 PHP xD에서 절대적으로 빠져 나왔습니다. 클래스와 정적 메서드에 대해 자세히 조사해야합니다. 그 코드를 어디에 넣을 지 더 많이 이해해야합니다.방금 추가 한 인덱스 열의 데이터 사용
어쨌든, 마지막으로 삽입 된 ID를 알기 위해 노력하고있는 것이 아니며, MySQL 테이블의 마지막으로 삽입 된 행의 인덱스 값을 가져오고 싶습니다. 내 색인 열은 "id"라고하며 새 행을 추가 할 때마다 자동 증가로 설정되지만 번호가 업데이트되지 않는 행을 삭제하면 "id"행의 값이 항상 사용되지 않을 수 있습니다 행 번호와 동일합니다.
다음은 새 행을 삽입하는 코드입니다. 업데이트
<?php
require('conexion.php');
$name=$_POST['name'];
$email=$_POST['email'];
$pass=$_POST['pass'];
$localidad=$_POST['localidad'];
$saldo=$_POST['saldo'];
$slastupdate=$_POST['slastupdate'];
$query="INSERT INTO usuarios (name, email, pass, localidad, saldo, slastupdate) VALUES ('$name','$email','$pass','$localidad','$saldo','$slastupdate')";
$resultado=$mysqli->query($query);
?>
: 지금 들어, 내가 PDO를 사용하여 내 경우 ... 마지막의 삽입 된 행 ID를 얻기 위해 다른 쿼리를 사용하고 내가 개인 응용 프로그램을 개발하고 있어요 때문에 필요하지 않고, 거기에 mysql 주입의 위험이 없음
require_once "../php/new_mysql.php";
$query="INSERT INTO clientes (gira, localidad, nombre, email, proxivisi, saldo) VALUES ('$gira', '$localidad', '$nombre', '$email', '$proxivisi', '$saldo')";
$agregar=$mysql->query($query) or die(mysql_error());
$querygetid=$mysql->query("SELECT id, proxivisi FROM clientes WHERE nombre='$nombre' AND email='$email'");
$getid=$querygetid->fetch_assoc();
$id=$getid['id'];
당신은 인덱스 값으로 무엇을 의미합니까? 기본 키/자동 증가 값 이외의 값은 무엇이 좋을까요? 행 번호를 얻으 려한다면'SELECT count (*)'가 필요합니다. – Devon
"행 번호"가 없습니다 - 아마도 최근에 삽입 된 행보다 적은 수의 행을 얻고 싶다는 뜻입니다. Usuarios에서 ID SELECT <삽입 후 마지막으로 삽입 된 ID>'SELECT count (1) – a1ex07
사실, 기본 키/자동 증가 값을 가져 오려고합니다. 나는'PDO :: lastInsertId' 메소드로 그 값을 얻을 수 있을지 모르겠다. 만약 그 방법으로 얻을 수 있다면, 어떻게해야할지 모른다. 어쨌든 행 수가 세는 방법이 있다는 것을 알았으므로'PD :: lastInsertId'를 사용하여 올바른 방향으로 가고 있다고 생각합니다. PHP 클래스에 대해 더 배우기 시작해야합니다.이 스크립트를 스크립트에 적용하는 방법을 알고 있어야합니다 :) –