2017-04-21 1 views
1

간단한 SELECT를하려고하는데 왜 작동하지 않는지 모르겠다. 그냥이 페이지 는 working.I 내가 내 MySQL의 DB에서 데이터를, 그리고 난이 일을해야 생각이 있는지 확인하고없는 ..mysqli query (select) is not working (SELECT) php

<?php 
require_once 'includes/db_connection.php'; 
require_once 'includes/functions.php'; 
require_once 'includes/profile/get_the_id.php'; 
require_once 'app/profile/header/head-profile.php'; 

$query = "SELECT * FROM `description` WHERE 'user_id'=$id"; 
$result = mysqli_query($conn,$query) or die(mysqli_error($conn)); 

while ($row = mysqli_fetch_assoc($result)){ 
    $intro = $row['introducere']; 
} 

$query = "SELECT * FROM `images` WHERE 'user_id' = '$id'"; 
$result = mysqli_query($conn,$query) or die(mysqli_error($conn)); 
while ($row = mysqli_fetch_assoc($result)){ 
     $img = $row['img']; 
    } 

>

오류 메시지입니다 :이

Notice: Undefined variable: intro in C:\xampp\htdocs\New\profile.php on line 33 

Notice: Undefined variable: img in C:\xampp\htdocs\New\profile.php on line 33 

이 페이지에서 나는 html 부분에 필요한 2 페이지도 가지고 있습니다. 나는 facebook과 같은 사이트를 만들려고합니다. 그 페이지는 설명이고 배너 & 프로필 이미지 부분입니다.

<?php 
$conn = mysqli_connect('localhost','root','','forum'); 
$username = $_SESSION['username']; 
require_once 'get_the_id.php'; 

$target =" "; 
if (isset($_POST['upload'])) { 
    $target = "./img/" . basename($_FILES['image']['name']); 

    $image = $_FILES['image']['name']; 

    $query = "INSERT INTO `images` VALUES('','$id','$image')"; 
    mysqli_query($conn,$query) or die(mysqli_error($conn)); 

    $query = "UPDATE `users` SET `img_profil` = '$image' WHERE `users`.`id` = '$id'"; 
    mysqli_query($conn,$query) or die(mysqli_error($conn)); 
    $msg=""; 
    if (move_uploaded_file($_FILES['image']['tmp_name'], $target)){ 
     $msg="Success"; 
     }else{ 
      $msg="Fail"; 
     } 
    $_SESSION['image'] = $image; 
} 

$query = "SELECT * FROM `images` WHERE 'user_id'='$id'"; 
$result = mysqli_query($conn,$query); 
while ($row = mysqli_fetch_assoc($result)){ 
    $img = $row['img']; 
}?> 

개미이 :

<?php 
$conn = mysqli_connect('localhost','root','','forum'); 
require 'includes/profile/get_the_id.php'; 

$desc = $_SESSION['desc']; 
$username = $_SESSION['username']; 
$_SESSION['intro'] = " "; 
if(isset($_POST['save'])){ 
    $intro =mysqli_real_escape_string($conn,trim($_POST['intro'])); 
    if ($desc == 1) { 
     //daca are deja o descriere se actualizeaza 
     $query = "UPDATE `description` SET `introducere` = '$intro' WHERE `description`.`user_id` ='$id'"; 
     mysqli_query($conn,$query) or die(mysqli_error($conn)); 

    }elseif ($desc == 0) { 
     //daca nu are descriere se insereaza descrierea facuta acum in db 
     $query = "INSERT INTO `descripbion` VALUES('','$id','$username','$intro','','','')"; 
     mysqli_query($conn,$query); 
     //desc devine 1 deoarece a facut o descriere 
     $query = "UPDATE `users` SET `desc` = '1' WHERE `users`.`id` = '$id'"; 
     mysqli_query($conn,$query) or die(mysqli_error($conn)); 

    } 
    $_SESSION['intro'] = $intro; 
} 
+0

여기에 ''user_id '= $ id'라는 잘못된 인용문이 있습니다. 열 이름은 따옴표로 묶지 않아야합니다. http://stackoverflow.com/questions/11321491/when-to-use-single-quotes-double-quotes-and-backticks-in-mysql#11321508 –

+0

다음과 같이 사용하십시오. ''; $ _ POST [ 'id']. ". – lalithkumar

+0

Ommmmg 그래, 타이 너무 많은 마이클 .. –

답변

3

잘못된 인용은 코드에서 문제가 될 수 있어야합니다.

시도해보십시오. $ query = "SELECT * FROM images where user_id = $ id"; 대신 $ query = "SELECT * FROM images WHERE 'user_id'= '$ id'";

+0

예 .... 타이 너무! –