gpt4 book ai didi

PHP/MySQL : After inserting the value into a table the value of the variable gets lost and cannot print it out at the end of the file?

转载 作者:太空宇宙 更新时间:2023-11-03 11:46:14 25 4
gpt4 key购买 nike

<分区>

我想在同一个文件中进行多个数据库查询:

创建一个用户,选择新创建用户的 UID,并为同一用户分配特定角色。

从新创建的用户处获取 UID 后,我将该值保存到 $userID 变量中,但在文件末尾,变量值丢失了。

为什么? (PS:我暂时不考虑安全性)。

//Create User
$email = strip_tags($_POST['email']);
$conectar = mysqli_connect(HOST, USER, PASS, DATABASE);
$query = "INSERT INTO usuarios
(userEmail)
VALUES
('$email')";
$insertarBase = mysqli_query($conectar,$query);
mysqli_close($conectar);

//look for the UID of the newly created user
$conectar2 = mysqli_connect(HOST, USER, PASS, DATABASE);
$buscarUsuario = "SELECT userID, userEmail
FROM usuarios
WHERE userEmail='$email'
";
$resultadoBusqueda = mysqli_query($conectar2,$buscarUsuario);
$row = mysqli_fetch_array($resultadoBusqueda);
$userID = $row['userID'];
mysqli_close($conectar2);

//assign a role to the newly created user
$conectar3 = mysqli_connect(HOST, USER, PASS, DATABASE);
$asignarRol = "INSERT INTO rolesUsuarios
(userID, nombreRol)
VALUES
('$userID', 'registered')
";
$asignarRolenBase = mysqli_query($conectar3,$asignarRol);
mysqli_close($conectar3);

echo $userID; //Here the content of $userID is gone, nothing gets printed out

编辑:

由于某些奇怪的原因,$userID = mysqli_insert_id($conectar); 返回零。usuarios表语句的创建是这样的:

CREATE TABLE usuarios(
userID int unsigned not null auto_increment primary key,
userEmail char(50) not null);

此外,echo $asignarRol; 返回:

INSERT INTO rolesUsuarios (userID, nombreRol) VALUES ('0', 'noAutorizado') 

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com