Ошибки при отображении изображения, загруженного в папку с картинками в моей корневой папке - PullRequest
0 голосов
/ 25 марта 2012

Пожалуйста, мне нужна ваша помощь с моим сценарием.У меня есть страница, где я загружаю информацию о пользователях с подписью в папку подписей в корневой папке, используя следующий раздел моего кода:

                {
                $uploaddir = "uploads";

                $file = str_replace(' ', '_', $_FILES
  ['signature']['name']);       

       switch($_FILES['signature']['type']) {
                case "image/gif":                        
                case "image/jpeg":
                case "image/pjpeg":
                case "image/png":
                $uploaddir .= 'signatures';
                break;                                                                                    

                }         

                foreach($_FILES as $signature)                                             

   $tmp_name = $signature['tmp_name'];
                $type = $signature['type'];
                $name = $signature['name'];
                $size = $signature['size'];      


                if (move_uploaded_file($_FILES
   ['signature']['tmp_name'], $uploaddir.        $file)) {

         $query = "INSERT INTO users                  (users_id, tmp_name, type, name, size)  
       VALUES (NULL,  '$tmp_name', '$type'          , '$name' , '$size')"
     mysql_query($query) or
     die (mysql_error()); 
                }

Это запрос, который я использую для вызова именифайл, который я хочу.

 $query10 = mysql_query("SELECT name 
                      FROM  users
             WHERE username = '".$_SESSION        ['logged_username']."'") or 
   die (mysql_error());  
               $signature = mysql_fetch_array        ($query10);

Как я пытаюсь показать подпись, загруженную мной с помощью php-скрипта.

 echo "<img  src = \"uploads\""?><?php                   echo $signature['name'] ;?>"/<?        php "width=\"50\" height=\"100\">" ;

Изображение не отображается, хотя и показало небольшой размеркоробка с ничего внутри.Я совершенно уверен, что изображение было загружено в папку подписи моего корня.

Пожалуйста, простите мое форматирование.Я не имел в виду неуважение к этому сообществу.Я буду очень рад вашим комментариям, ответам и предложениям.Заранее спасибо.

Ответы [ 3 ]

0 голосов
/ 25 марта 2012

Что ж, наиболее очевидной причиной, по-видимому, является то, что вы читаете изображения с другого пути, чем то, где вы их храните.Как вы уже упоминали, вы сохраняете изображения в папке «подписи», но вместо этого читаете из папки «загрузки».Попробуйте это эхо:

echo '<img  src = "signatures"' . $signature['name'] . ' width="50" height="100">';

Если вышеупомянутое все еще не показывает изображение, оно нуждается в некоторой отладке.

  1. В коде PHP есть 2 вероятныхМеста для хранения изображений - папки для «загрузки» и «подписи».Пожалуйста, убедитесь, в какую папку сохраняются изображения.Возможно, вам следует сначала проверить, по какому пути существует изображение (используя file_exists), а затем соответственно решить, какой путь использовать в качестве источника.

  2. Пожалуйста, убедитесь, что изображения действительно загружают

Кстати, есть ли конкретная причина для исключения \ (обратной косой черты) в вашем PHP-коде:

$uploaddir = "uploads\\";
$uploaddir = "signatures\\";

Надеюсь, что выше поможет!

0 голосов
/ 26 марта 2012
  $uploadpath="uploads/signatures/";
             echo "<img  src =".$uploadpath.      $signature['name']." width=\"50\"               height = \"100"\>" ;
0 голосов
/ 25 марта 2012

Замените код для отображения изображения следующим:

  $uploadpath="uploads/";
  echo "<img  src ='".$uploadpath.$signature['name']."' width='50' height='100'>" ;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...