大家好,我正在做一个个人项目,需要帮助。我希望用户能够编辑其个人资料,但这给我一个错误,看看是否可以找到它,我通过了代码和错误
$id = $_POST['id'];
function verificarUsuario($id) {
$sql_leer = 'SELECT usuario FROM usuarios WHERE id = '.$id.' AND usuario = '.$_SESSION['usuario'].' ';
$gsnet = $pdo->prepare($sql_leer);
$gsnet->execute($id);
if ($gsnet->fetchColumn() > 0) return true;
return false;
};
/* Se cargan los datos del usuario para mostrar en el FORM */
$sql_leer = 'SELECT id,equipo,email,pass,thumb FROM usuarios WHERE usuario = '.$_SESSION['usuario'].'';
$gsnet = $pdo->prepare($sql_leer);
$gsnet->execute();
$resultado = $gsnet->fetchAll();
?>
<form method="POST" action="editar_usuario.php" enctype="multipart/form-data">
<input type="text" class="form-control" placeholder="Equipo" name="equipo" value="<?php echo $resultado['equipo']?>">
<input type="text" class="form-control" placeholder="Email" name="email" value="<?php echo $resultado['email']?>">
<input type="text" class="form-control" placeholder="Contraseña" name="pass" value="<?php echo $resultado ['pass']?>">
<input type="file" class="form-control" placeholder="Imagen" name="thumb" value="<?php echo $resultado ['thumb']?>">
<input type="hidden" name="id" value="<?php echo $resultado['id']?>" >
<button class="btn btn-primary mt-3">Editar</button>
</form>
错误:
<form method="POST" action="editar_usuario.php" enctype="multipart/form-data">
<input type="text" class="form-control" placeholder="Equipo" name="equipo" value="<br />
<b>Notice</b>: Undefined index: equipo in <b>D:\xampp\htdocs\Proyectos\ProyectoDriversParadeClub\DriversParadeClub\view\perfil.view.php</b> on line <b>160</b><br />
">
<input type="text" class="form-control" placeholder="Email" name="email" value="<br />
<b>Notice</b>: Undefined index: email in <b>D:\xampp\htdocs\Proyectos\ProyectoDriversParadeClub\DriversParadeClub\view\perfil.view.php</b> on line <b>161</b><br />
">
<input type="text" class="form-control" placeholder="Contraseña" name="pass" value="<br />
<b>Notice</b>: Undefined index: pass in <b>D:\xampp\htdocs\Proyectos\ProyectoDriversParadeClub\DriversParadeClub\view\perfil.view.php</b> on line <b>162</b><br />
">
<input type="file" class="form-control" placeholder="Imagen" name="thumb" value="<br />
<b>Notice</b>: Undefined index: thumb in <b>D:\xampp\htdocs\Proyectos\ProyectoDriversParadeClub\DriversParadeClub\view\perfil.view.php</b> on line <b>163</b><br />
">
<input type="hidden" name="id" value="<br />
<b>Notice</b>: Undefined index: id in <b>D:\xampp\htdocs\Proyectos\ProyectoDriversParadeClub\DriversParadeClub\view\perfil.view.php</b> on line <b>164</b><br />
" >
存档editar_usuario.php
include_once'../ pruebas / conexion.php';
/ * FUNCIONGENÉRICAVALIDACIÓNUSUARIO * /
$ id = $ _POST ['id'];函数verificarUsuario($ id){ $ sql_leer ='从usuarios的id ='。$ id中选择usuario。 AND usuario ='。$ _ SESSION ['usuario']。' ';
$gsnet = $pdo->prepare($sql_leer); $gsnet->execute($id); if ($gsnet->fetchColumn() > 0) return true; return false; };
/ *如果您的信息没有发布,请通知* /如果 (isset($ _ POST ['id'])){ $ data = [ 'equipo'=> $ _POST ['equipo'], 'email'=> $ _POST ['email'], 'pass'=> md5($ _ POST ['pass']), 'thumb'=> $ _POST ['thumb'], 'id'=> $ _POST ['id'] ]; $ sql_editar ='更新用户设置SET equipo =:equipo,email =:email,pass =:pass,thumb =:thumb WHERE id =:id'; $ sentencia_editar = $ pdo-> prepare($ sql_editar); $ sentencia_editar-> execute($ data);
/* Verificación usuario. Si no es válido redirecciona. Si es válido continua */ if (!isset($_POST['id']) || !verificarUsuario($id)){ header('Location:home.php'); } };
答案 0 :(得分:0)
您必须检查每个变量的isset()
。 isset()
用于检查变量是否具有值。您必须为所有输入值添加isset(
)。
请举一个例子:
<input type="text" class="form-control" placeholder="Equipo" name="equipo" value="<?php echo isset($resultado['equipo'])? $resultado['equipo']:''; ?>">