2017-06-03 13 views
0

私はacoountsを持つサイトを持っています。私は、すべてのユーザーがアバターをアップロードしたいと思っています。 解析エラー:私は、コードを実行しようとすると、ここに私の誤りである/ varに識別子(T_STRING)または変数(T_VARIABLE)または番号(T_NUM_STRINGを)期待し、構文エラー、予期しない ''(T_ENCAPSED_AND_WHITESPACEを)/ WWW/HTML/upload_image私はこれをapreciateだろう間違っているところ誰も私を伝えることができればライン26PHPを使用してmysqlデータベースに画像をアップロード

に.PHP。ありがとうございました。

<?php 
    session_start(); 

    $connect = mysqli_connect("localhost", "stringdot", "Ninja123") or die(mysqli_error()) ; 
    $db = mysqli_select_db($connect, "ddbase") or die(mysqli_error($connect)); 

    if(isset($_FILES['image'])){ 
     $error= array(); 
     $marime_fisier =$_FILES['image']['size']; 
     $extensia= $_FILES['image']['type']; 
     $f = explode('.',$_FILES['image']['name']); 
     $file_extension=strtolower(end($f)); 

     $extensions= array("jpeg","jpg","png"); 

     if(in_array($file_extension,$extensions)=== false){ 
     $error[]="Please upload a file with extension JGEG or PNG."; 
     } 

     if($marime_fisier > 2097152){ 
     $error[]='File size cannot exceed 2 MB'; 
     } 

     $image = addslashes(file_get_contents($_FILES['image']['tmp_name'])); 
     if(empty($error)==true){ 
     $sql = " UPDATE users SET avatar = '{$image}' WHERE username = $_SESSION['login_username'] "; 
     $result = mysqli_query($connect,$sql) or die ("Error : ". mysqli_error($connect)); 
     $rows = mysqli_num_rows($result); 
     if ($rows==1) { 
      echo "Success";} 
      else { 
       echo "Something went wrong!";; 
      } 
     }else 
     { 
     echo $error; 
     } 
    } 
?> 

HTMLコード:

<form class = "file_upload_form" action="upload_image.php" method="POST" enctype="multipart/form-data"> 
    <label>File: </label><input type="file" name="image" /></br> 
    <input type="submit" /> 
</form> 
+0

私は)ないadd_slashes()(mysqli_real_escape_stringを使用する方が良いと思います。また、 mysqlサーバの設定に問題があるかもしれません:最大パケットサイズ。また、テーブルの列に十分な大きさのBLOBデータ型を選択します。 –

答えて

0

ちょうど私はそれが動作すると確信しています。この1

$sql = " UPDATE users SET avatar = '$image' WHERE username =".$_SESSION['login_username'] ; 

でPHPコードの行26を交換してください。

+0

ありがとうございます!働いた。 – StringShot

+0

もう1つの質問があります。私のエラーは次のとおりです: 'where句'の中の未知の列 'TEST' ....(TESTはユーザー名です) – StringShot

+0

いいえProblem.Andは "。引用符の間に衝突があるときはいつでも。 – Vaibhav

関連する問題