2016-07-24 28 views
-1

私はデータベースに画像をアップロードすることができましたが、アップロードされた画像をHTMLフォームのすぐ下に表示したいと思います。私は別のPHPスクリプトで使用されるPHPスクリプトで配列を作成することでこれをしようとしています。このエラーは、「スーパーグローバル$ _REQUESTに直接アクセスしないでください」というメッセージが表示されます。これをどのように解決できますか?ウェブページのデータベースから画像を表示

<?php 

require 'connection'; 

$id = addslashes ($_REQUEST ['id']); 

$image = mysql_query ("SELECT * FROM players WHERE id= $id"); 
$image2 = mysql_fetch_assoc($image); 
$image3 = $image2 ['image']; 


header ("content-type: image/jpeg"); 
echo $image3; 


<?php 
require 'connection.php'; 

// file properties 
$id = filter_input(INPUT_POST, 'playerid'); 
$name = filter_input(INPUT_POST, 'name'); 
$age = filter_input(INPUT_POST, 'age'); 
$position = filter_input(INPUT_POST, 'position'); 
$nationality = filter_input(INPUT_POST, 'nationality'); 
$file = $_FILES['image']['tmp_name']; 

if (! isset($file)){ 
    echo "Please select an image."; 
} 
else { 
    $_id = mysql_real_escape_string($id); 
    $_name = mysql_real_escape_string($name); 
    $_age = mysql_real_escape_string($age); 
    $_position = mysql_real_escape_string($position); 
    $_nationality = mysql_real_escape_string($nationality); 
    $image = addslashes(file_get_contents($_FILES ['image']['tmp_name'])); 
    $image_name = addslashes($_FILES ['image']['name']); 
    $image_size = getimagesize($_FILES ['image']['tmp_name']); 

if ($image_size == FALSE){ 
    echo "Thats not an image."; 
} 
else{ 
    if(!$insert = mysql_query("INSERT INTO players VALUES ('$_id', '$_name', '$_age', '$_position', '$_nationality', '$image_name', '$image')")){ 
     echo "Problem uploading image."; 
    } 
else 
{ 
    $lastid = mysql_insert_id(); 
    echo "Profile photo uploaded.<p />Player photo:<p /><img src= getphoto.php?id=$lastid"; 
} 
} 
} 

答えて

0

変更

$id = addslashes ($_REQUEST ['id']); 

あなたはPOSTを処理したり、要求をGETしているかどうかに応じて$_POST$_GETのいずれかにアクセスします。

$id = addslashes ($_POST['id']); 
or 
$id = addslashes ($_GET['id']); 
関連する問題