[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. Andres

    Andres Elder - Старейшина

    Joined:
    4 Apr 2008
    Messages:
    320
    Likes Received:
    119
    Reputations:
    0
    На самом деле тут миллион способов сделать это.

    Важно, в src (там где images) прописан путь к изображениям, и далее его расширение (jpg)
    У тебя, наверняка, оно будет другим. Так что не забудь поменять.
    Code:
    <?php
    if($_SERVER["REQUEST_METHOD"] == "POST")
    	$imgNum = abs((int)$_POST["imgNum"]);
    ?>
    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
    <title>Fuck</title>
    </head>
    <body>
    	<h4>Введите номер изображения</h4>
    	<form method="POST">
    	<input type="text" name="imgNum">
    	<br />
    	<input type="submit" value="Показать">
    	</form>
    	<?if($imgNum):?>
    		<a href="./images/<?=$imgNum?>.jpg">Показать изображение</a>
    	<?endif?>
    </body>
    </html>
    
     
  2. MaxFast

    MaxFast Elder - Старейшина

    Joined:
    12 Oct 2011
    Messages:
    575
    Likes Received:
    149
    Reputations:
    94
    Нужно отправить сообщение в чат. У меня к сожалению не получается.

    Code:
    Content-Disposition: form-data; name="task"
    post
    
    Content-Disposition: form-data; name="room"
    mo
    
    Content-Disposition: form-data; name="text"
    test 
    Этим кодом пытался:
    Code:
    	curl_setopt($curl, CURLOPT_URL, 'http://site.ru/chat');
    	curl_setopt($curl, CURLOPT_RETURNTRANSFER,true); 
    	curl_setopt($curl, CURLOPT_POST, true); 
    	curl_setopt($curl, CURLOPT_POSTFIELDS, "room=mo&task=post&text=text");
    	curl_close($curl); 
    Не работает. Буду благодарен помощи.
     
  3. FunOfGun

    FunOfGun Elder - Старейшина

    Joined:
    5 Sep 2012
    Messages:
    388
    Likes Received:
    72
    Reputations:
    124
    вот пример: http://stackoverflow.com/questions/10479958/how-to-post-html-multipart-form-data-using-php-curl
    но судя по всему, может даже имеет смысл отказаться ок курла в пользу сокетов
     
  4. h(f)ucker

    h(f)ucker Member

    Joined:
    11 Jul 2009
    Messages:
    81
    Likes Received:
    84
    Reputations:
    32
    MaxFast,
    А где собственно отправка запроса?
    $rez = curl_exec($curl);
    Ваш код только устанавливает опции и сразу "закрывает" курл.
     
  5. BlueMarine

    BlueMarine New Member

    Joined:
    18 Sep 2010
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0



    А можно сделать чтобы она внизу сразу появлялась как эта ссылка?
     
  6. Andres

    Andres Elder - Старейшина

    Joined:
    4 Apr 2008
    Messages:
    320
    Likes Received:
    119
    Reputations:
    0
    вместо строки
    Code:
    <a href="./images/<?=$imgNum?>.jpg">Показать изображение</a>
    вставь
    Code:
     <img src="./images/<?=$imgNum?"?>.jpg />
     
  7. BlueMarine

    BlueMarine New Member

    Joined:
    18 Sep 2010
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0

    Поменял))) Теперь при переходе на страницу проблема в (Удаленный сервер или файл не найден)
     
  8. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,174
    Likes Received:
    1,157
    Reputations:
    202
    На кавычки посмотри. Прежде чем копипастить хоть посмотри на код.
     
  9. BlueMarine

    BlueMarine New Member

    Joined:
    18 Sep 2010
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    Не заметил сори!

    Andres спасибо что помог) долго я искал подобное!


    Скажи еще вот что как сделать так чтобы картинка если большая то она открывалась максимум на 200х200 :)
     
  10. Andres

    Andres Elder - Старейшина

    Joined:
    4 Apr 2008
    Messages:
    320
    Likes Received:
    119
    Reputations:
    0
    Да-да, все верно подметил b3, в спешке кавычки не поставил как надо

    Атрибут тэгу <img> надо поставить width="200" и height="200"

    Code:
    <img src="./images/<?=$imgNum?>.jpg" height="200"/>
    Но тут советую оставить только height="200"
    А вообще, это если так, по очень простому.
    Эти вещи делаются другими способами.
     
    #21750 Andres, 18 Aug 2013
    Last edited: 18 Aug 2013
  11. BlueMarine

    BlueMarine New Member

    Joined:
    18 Sep 2010
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    Расскажешь? Покажешь? :)


    Заметил что при вводе неправильной картинки появляется просто окошко и в нем написано Изображение))
    Как сделать чтобы писало ошибка неправильно ввели номер.
     
    #21751 BlueMarine, 18 Aug 2013
    Last edited: 18 Aug 2013
  12. b3

    b3 Banned

    Joined:
    5 Dec 2004
    Messages:
    2,174
    Likes Received:
    1,157
    Reputations:
    202
    BlueMarine
    http://php.net/manual/ru/function.file-exists.php
    делать проверку, если файла нет, то писать предупреждение, если есть выводить.

    По поводу картинок, если размер будет 1024х768 к примеру и ты выведешь как 200х200 то изображение будет растянутое и ужасное из-за сжатых пикселей. Поэтому нужно делать resize на лету, для этого попробуй взять что-то типа http://plugins.jquery.com/ae.image.resize/
     
  13. randman

    randman Members of Antichat

    Joined:
    15 May 2010
    Messages:
    1,366
    Likes Received:
    610
    Reputations:
    1,101
    Если ресайзить на лету у клиента трафика не хватит, на стороне у сервера - мощностей.

    Надо-бы определится с разрешением, и хранить как и оригиналы, так и уменьшенные копии, которые уже передавать в браузер.
     
  14. BlueMarine

    BlueMarine New Member

    Joined:
    18 Sep 2010
    Messages:
    0
    Likes Received:
    2
    Reputations:
    0
    Давайте возьмем к примеру мой телефон - 3264х2448 то как быть?


    b3 К сожалению я впервые сталкиваюсь с таким кодом можно подробнее,на той странице множество подобных и не пойму о каком ты имел ввиду коде :)
     
    #21754 BlueMarine, 18 Aug 2013
    Last edited: 18 Aug 2013
  15. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,550
    Likes Received:
    172
    Reputations:
    99
    почему появляется такая ошибка ?
    этот скрипт получает ip через картинку gif, всё впринципе записывает но вместо картинки вот такие надписи стоят
    PHP:
    WarningCannot modify header information headers already sent by (output started at /home/u52410120/public_html/snif/img.gif:1in /home/u52410120/public_html/snif/img.gif on line 2
    GIF89a�
    !,D;
    пробелов у меня нет нигде, что это такое ?

    по строкам указывает на заголовок
    PHP:
    header("Content-type: image/png");
    $im ImageCreateFromGif("image.gif");
    ImageGif($im); 
    ImageDestroy($im);
    2я строка у меня header("Content-type: image/png");
     
    #21755 GAiN, 18 Aug 2013
    Last edited: 18 Aug 2013
  16. FunOfGun

    FunOfGun Elder - Старейшина

    Joined:
    5 Sep 2012
    Messages:
    388
    Likes Received:
    72
    Reputations:
    124
    GAiN, ты похоже пишешь(echo или print) что-то до вывода заголовка, я так понимаю, этот код вызывается из другого с помощью include или чего-то подобного? посмотри, перед вызовом идет печать чего-то, ее нужно убрать
     
  17. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,550
    Likes Received:
    172
    Reputations:
    99
    нет, это всё в однов файле, вот код:
    PHP:
    <?php
    header
    ("Content-type: image/png");
    $im ImageCreateFromGif("image.gif");
    ImageGif($im); 
    ImageDestroy($im);
    $file="log.txt";
    $data=date("D.M.Y"); 
    $time=date("h:i"); 
    $ip=trim($_SERVER['REMOTE_ADDR']);   
    $sysinfo=trim($_SERVER['HTTP_USER_AGENT']); 
    if(
    is_file($file)){ 
    $fo=fopen($file,"a"); 
    $res="$data | $time | $ip | $sysinfo \n";

    $fw=fwrite($fo,$res);
    fclose($fo); 
    }
    ?>
    в .htaccess

    AddType application/x-httpd-php .gif
     
  18. FunOfGun

    FunOfGun Elder - Старейшина

    Joined:
    5 Sep 2012
    Messages:
    388
    Likes Received:
    72
    Reputations:
    124
    я не про в php, но, судя по ошибке, у тебя в первой строке что-то выводится, посмотри, может там bom(два "невидимых" байта), если в notepad++ пишешь, попробуй сменить кодировку на UTF-8 без BOM или вообще ansi
     
  19. GAiN

    GAiN Elder - Старейшина

    Joined:
    2 Apr 2011
    Messages:
    2,550
    Likes Received:
    172
    Reputations:
    99
    FunOfGun, я проверял на скрытые символы, лишнего нет :
    [​IMG]
     
  20. seosimf

    seosimf Member

    Joined:
    3 Mar 2011
    Messages:
    271
    Likes Received:
    44
    Reputations:
    6
    UTF-8 с BOM ты так не увидишь, как тебе сказали выше сохрани без BOM.
     
Thread Status:
Not open for further replies.