Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [php] zmiana nagłówka(header)
Forum PHP.pl > Forum > Przedszkole
granan
Witam, chciałbym do formularza (formularz.php ) ładować automatycznie generujący się obrazek tworzony przez (kod.php). Jednakże nie potrafię zmienić w pliku formularz.php nagłówka, tak abym mógł importować obrazek, który ma nagłówek graficzny. Proszę o pomoc. Za wszystkie rady z góry dziękuje. Na początku formularz.php znajduje się ob_start(); a na końcu ob_end_flush();
Sokal
A google nie działa?
A manual wyłączyli?
jest takie coś jak header()
granan
Zanim założyłem nowy temat, sprawdziłem w Manualu i google, ale nie ma tam konkretnej odpowiedzi na moje pytanie. A tu są 2 pliki:

formularz.php

  1. <?php ob_start();
  2. require("kod.php");
  3.  
  4. print("<html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /></head>");
  5.  
  6. print("<title>Formularz - new user</title>");
  7.  
  8. print("<div id="div_g"><table id="tabela_g">");
  9. print("<tr><td>kod</td><td><input type="text" name="kod" maxlength="10" size="10"/>");
  10.  
  11. //------------------------------------------------------------------------------------------------
  12. draw();
  13. print("</td></tr>");
  14.  
  15. print("</table></div></body></html>");
  16. ?>


kod.php
  1. <?php header("Content-type: image/jpeg");
  2. function draw() {
  3. mt_srand((double)microtime()*10000000);
  4. $string="abcdefghijklmnopqrstuvwxyz1234567890";
  5.  
  6. function draw_string($charset, $length) {
  7. $length-=1;
  8. $chars_amount=strlen($charset)-1;
  9. for ($i=0; $i<$length; $i++) {
  10. $position=mt_rand(0,$chars_amount);
  11. $new_string.=$charset[$position];
  12. }
  13.  return $new_string;
  14.  }
  15. $random_string=draw_string($string, 9);
  16.  
  17. $rysunek=imagecreate(100,20);
  18. $kolor_bialy=imagecolorallocate($rysunek,255,255,255);
  19. $kolor_losowy=imagecolorallocate($rysunek,rand()%100, rand()%256, rand()%256);
  20. $kolor_czarny=imagecolorallocate($rysunek,0,0,0);
  21. imagefill($rysunek, 0,0,$kolor_czarny);
  22. for($i=1; $i<=10; $i++) {
  23. for ($n=1; $n<300; $n++) {
  24. imagesetpixel ($rysunek, rand()%100-1, rand()%30-1, $kolor_losowy);}
  25. }
  26. imagestring($rysunek,5,10,2,$random_string, $kolor_bialy);
  27.  
  28. imagejpeg($rysunek);
  29. imagedestroy($rysunek);
  30. }
  31. ?>


formularz.php
kod.php
siemakuba
A czy przypadkiem nie tak?

formularz.php (zamiast draw() wstawiasz):
  1. <img src="kod.php">


kod.php (po zakończeniu funkcji wywołujesz ją):
  1. <?php
  2. draw();
  3. // lub echo draw();, nie pamiętam dokładnie
  4. ?>


pozdr.
granan
Niestety ale twoje rady nie sprawdzają się. Do formularza jest wczytywany obrazek wraz z nagłówkiem, a więc jest wyświetlany tylko obrazek, bez formularza
siemakuba
Cytat(granan @ 16.02.2007, 15:53:39 ) *
Niestety ale twoje rady nie sprawdzają się.
To zdanie powinno chyba brzmieć: "Niestety, ale twoich rad nie sprawdzałem".

plik kod.php
  1. <?php
  2. header("Content-type: image/jpeg");
  3.  
  4. function draw() 
  5. { 
  6. /* tu cialo funkcji */ 
  7. }
  8. draw();
  9. ?>


plik formularz.php
  1. <?php
  2.  
  3. print("<html><head><meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" /></head>");
  4. print("<title>Formularz - new user</title>");
  5. print("<div id="div_g"><table id="tabela_g">");
  6. print("<tr><td>kod</td><td><input type="text" name="kod" maxlength="10" size="10"/>");
  7.  
  8. echo '  <img src="kod.php" alt="Obrazeczek" border="1">';
  9.  
  10. print("</td></tr>");
  11. print("</table></div></body></html>");
  12. ?>


wynik:


pozdr.
granan
Metoda siemakuba sprawdza się. Polecam i dziękuje
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.