-2
votes

Je reçois 0 valeur à chaque fois que j'insère (int) $ _ obtenir ['id']; dans la base de données

J'ai un problème qui est quand j'essaie d'insérer la valeur de l'obtention ["ID"], je reçois toujours un 0 même lorsque j'imprime l'identifiant! Je peux le voir. Upload.php: Bonjour, J'ai un problème qui est quand j'essaie d'insérer la valeur de l'obtention ['ID'], je reçois toujours un 0 même lorsque j'imprime l'ID! Je peux le voir. Upload.php: xxx

et mon SQL:

une photo de la base de données

 Entrez la description de l'image ici

J'ai essayé d'utiliser ce lien: xxx


1 commentaires

Notez que votre code est ouvert à injections SQL


3 Réponses :


1
votes

Lorsque vous postez sur upload.php, vous perdez les paramètres d'obtention. Après cela, vous avez lancé le $ _GET ['ID'] (chaîne vide) à (int) et PHP le définit à 0.

<input type="hidden" name="id" value="<?php echo $id; ?>" />


0 commentaires

0
votes

Vous essayez d'insérer une chaîne au lieu d'une valeur INT. Vous devez supprimer les guillemets pour le ID comme: xxx


1 commentaires

MySQL peut lancer une chaîne à un int.



0
votes

Utilisez le code suivant, vous devez transmettre l'ID sous le formulaire lors de la soumission.

<?php
include '../include/connect.php';
$id =(int)$_GET['id'];
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
        <title>Untitled Document</title>
    </head>
<body>
<form action="upload.php" method="post" enctype="multipart/form-data">
    <input type="file" name="file_img" />
    <input type="hidden" name="id" value="<?php echo $id;?>" />
    <input type="submit" name="btn_upload" value="Upload">
</form>    
<?php
if(isset($_POST['btn_upload']))
{
    $filetmp = $_FILES["file_img"]["tmp_name"];
    $filename = $_FILES["file_img"]["name"];
    $filetype = $_FILES["file_img"]["type"];
    $filepath = "photo/".$filename;
    $id = $_POST['id'];

    move_uploaded_file($filetmp,$filepath);
    $sql = "INSERT INTO upload_img (img_name,img_path,img_type,im_id) VALUES ('$filename','$filepath','$filetype','.$id.')";
    mysqli_query($con, $sql);
}
?>
</body>
</html>


0 commentaires