Введите код в форму ввода текста, как? - PullRequest
0 голосов
/ 24 августа 2009

Я хочу знать, как лучше записать мой "$ imagepath" в этот ввод

Это мой скрипт загрузки

<?php
        if(isset($_POST['submit'])){
          if (isset ($_FILES['new_image'])){
              $imagename = $_FILES['new_image']['name'];
              $source = $_FILES['new_image']['tmp_name'];
              $target = "temporary_images/".$imagename;
              move_uploaded_file($source, $target);

              $imagepath = $imagename;
              $save = "temporary_images/" . $imagepath; //This is the new file you saving
              $file = "temporary_images/" . $imagepath; //This is the original file

              list($width, $height) = getimagesize($file) ; 

              $modwidth = 350;                         
              $modheight = 100; 

              $tn = imagecreatetruecolor($modwidth, $modheight) ; 
              $image = imagecreatefromjpeg($file) ; 
              imagecopyresampled($tn, $image, 0, 0, 0, 0, $modwidth, $modheight, $width, $height) ; 

              imagejpeg($tn, $save, 100) ; 

              $save = "temporary_images/sml_" . $imagepath; //This is the new file you saving
              $file = "temporary_images/" . $imagepath; //This is the original file

              list($width, $height) = getimagesize($file) ; 

              $modwidth = 80; 
              $modheight = 100; 

              $tn = imagecreatetruecolor($modwidth, $modheight) ; 
              $image = imagecreatefromjpeg($file) ; 
              imagecopyresampled($tn, $image, 0, 0, 0, 0, $modwidth, $modheight, $width, $height) ; 

              imagejpeg($tn, $save, 100) ; 
            echo "Large image: <img src='temporary_images/".$imagepath."'><br>"; 
            echo "$imagepath"
          }
        }

А это моя форма

<form>
 <input name="animeinput" id="animeinput" size="20" class="textbox">
</form>

Ответы [ 2 ]

2 голосов
/ 24 августа 2009

Если у вас есть переменная, доступная для разметки:

<form>
   <input name="animeinput" id="animeinput" size="20" class="textbox" value="<?php echo htmlspecialchars($imagePath); ?>" />
</form>
0 голосов
/ 24 августа 2009

Обратите внимание, что при этом часто могут возникать проблемы с кэшированием и временем (поэтому, если у вас возникают проблемы с отображением изображения после отправки формы, см. Ниже), я думаю, это как-то связано с отсутствием к моменту загрузки полученной страницы. Я решил эту проблему, обновив свой образ с помощью jquery / ajax.

После публикации формы и загрузки изображения я сохраняю ссылку на изображение в скрытом теге #large_image. Тогда используйте этот jquery ....

$(document).ready(function(){

    //read in hidden reference to image URL
var large_photo = $("#large_image").val();

   //display relevent image (use placeholder if no image uploaded yet)
if (large_photo != "") {
    $("#photo_holder").html('<img src="' + large_photo + '" />');
} else {
    $("#photo_holder").html('<img src="noimagefound.png" />'); 
}

});

Тогда в вашем случае вместо отображения изображения src вы должны отобразить скрытый тег с путем к изображению.

Надеюсь, это поможет:)

...