Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z przesłaniem wartości zmiennej ze skryptu do pliku html.
Forum PHP.pl > Forum > PHP
Michael65
Witam,

mam plik HTML:

  1. </head>
  2.  
  3.  
  4. <img src="http://......./cos.php">
  5.  
  6. </body>
  7. </html>


i w nim mam właśnie znacznik <img ... >, którego adresem ma być tekst wygenerowany przez skrypt cos.php.

I teraz skrypt wygenerował jakiś link i jak mam zaznaczyć w kodzie tego skryptu aby ten link poleciał do tego znacznika <img ...>?questionmark.gif
freemp3
Z tego co się orientuje to raczej nie ma możliwości zrobienia czegoś takiego natomiast możesz zrobić w ten sposób:
Plik cos.php
Kod
function funkcjaWPlikuCos()
{
// treść tego co w pliku cos.php
// oraz w return to co powinno się pojawić w tym linku
}


Plik z html
Kod
<?php
include 'cos.php';
?>
<!-- treść html -->
<img src="http://......./<?=funkcjaWPlikuCos()?>" />
<!-- dalsza część html -->
Michael65
tylko ze nie mogę używać

<?php
include 'cos.php';
?>

mogę działaś tylko na linku, czyli <img src="...">
tylko mogę coś wpisać tam gdzie kropki.

Da się coś takiego osiągnąć?
tehaha
możesz tam dać link do skryptu php i dynamicznie generować obrazek
freemp3
Da się ale javascript-em. PHP raczej wątpię, żeby dało się coś takiego zrobić.
Możesz zrobić np coś takiego:
1. Miedzy znacznikami head zamieszczasz sobie funkcje w JS która ma coś wykonać.
1.1 W funkcji wykonujesz co tam Ci potrzeba
1.2 Odwołujesz się do elementu na podstawie jego ID
Kod
document.getElelemenyById("nazwaElementu").src = wynik;

2. W tagu body dodajesz
Kod
onload = "funkcjaWJS()"


Ewentualnie jeśli potrzebujesz koniecznie pliku php to możesz skorzystać w bibliotek js: prototype lub jquery. Mają one obsługę ajax więc możesz wysłać zapytanie do pliku a ten zwróci Ci wynik. W tedy w funkcji między tagami head musisz zawrzeć polecenia Ajax.
Może to wyglądać mniej więcej tak:
Kod
new Ajax.Request('cos.php',
  {
    parametr1: parametr // tablica parametrów do przekazania - działanie identyczne jak przekazanie danych post przez formularz
    onSuccess: function(odpowiedz){
      $("nazwaElementu").src = odpwiedz.responseText;
    },
  });

W tym wypadku potrzebna będzie biblioteka prototype. Można bez problemu znaleźć w google i ściągnąć.
W obiekcie "odpowiedz.responseText" jest zawarte to co się powinno wyświetlić dla normalnego użytkownika, więc wystarczy, że wyświetlisz w pliku cos.php wynik i będzie on w tym obiekcie.


/// Edit
tehaha w sumie masz racje. Nie ma potrzeby męczyć się aż tak z JS smile.gif Nie do końca poprawnie zrozumiałem treść problemu
Tutaj jest opisane jak można osiągnąć efekt którego potrzebujesz:
http://php.pl/Wortal/Artykuly/PHP/Bibliote...e-grafiki-w-PHP
cycofiasz
Wyjaśnij dlaczego tak chcesz robić - oszczędzisz ludziom czas.
Michael65
bo chce to zastosować w allegro, a tam nie można dać nic poza HTML i CSS
ADeM
Zastosuj się do rady ~tehaha.
W img podaj adres do skryptu php, a w skrypcie zwroc do przegladarki grafikę.
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.