在php

时间:2018-07-15 09:48:37

标签: php mysql

大家好,我正在做一个个人项目,需要帮助。我希望用户能够编辑其个人资料,但这给我一个错误,看看是否可以找到它,我通过了代码和错误

$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');

}     };

1 个答案:

答案 0 :(得分:0)

您必须检查每个变量的isset()isset()用于检查变量是否具有值。您必须为所有输入值添加isset()。

请举一个例子:

<input type="text" class="form-control" placeholder="Equipo" name="equipo" value="<?php echo isset($resultado['equipo'])? $resultado['equipo']:''; ?>">