Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Zamiana wezlow - DOMElement php, span zamiast img
uczeń php
post
Post #1





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 8.01.2010

Ostrzeżenie: (0%)
-----


Witajcie
Mam taki problem wczytuje plik html -> file_get_contents() smile.gif ale w sekcji <body><div>TRESC ARTYKULU chcialbym zmienic img src="/img.jpg" na http://nowadomena/img.jpg i a href="file.html" na href="http://nowadomena/file.html". W googlach przeszukalem chyba wszystko wink.gif poczawszy od manuala PHP - DOM, nawet znalazlem algorytm przeszukiwania drzewka smile.gif. Po wielu moich wysilkach ulozylem cos takiego.
  1. new DOMDocument ();
  2. $dom->loadHTML ( $xmldoc );
  3. showNode ( $dom, 'blockquote' );
  4. function showNode($dom, $child_name) {
  5. $i = 0;
  6. while ( is_object ( $element = $dom->getElementsByTagName ( $child_name )->item ( $i ) ) ) {
  7. if ($element->nodeType == XML_ELEMENT_NODE)
  8. if ($element->childNodes->length > 0) {
  9. foreach ( $element->childNodes as $kids ) {
  10. if ($kids->nodeType == XML_ELEMENT_NODE)
  11. if ($kids->childNodes->length > 0) {
  12. $child_name = $kids->nodeName;
  13. echo $kids->nodeName;
  14. showNode ( $dom, $child_name );
  15. }
  16. }
  17. }
  18. $i ++;
  19. }
  20. }

Zamiast img pojawia sie span na level div -> deep div -> deep powinno byc img a nie span. Chcialbym przeszukac cale drzewo na kazdym jego nawet najglepszym poziomie, ze tak powiem i tam gdzie jest img src /img.jpg zamien na src=/nowadomena/img.jpg i a href file.html zamien na href nowadomena/file.html.
Czy ktos mi pomoze ? sad.gif
Ps. (sorry, za brak polskich znakow ale mam windowsa wersji angielskiej.)

Ten post edytował uczeń php 13.07.2016, 07:28:26
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 4)
trueblue
post
Post #2





Grupa: Zarejestrowani
Postów: 6 806
Pomógł: 1828
Dołączył: 11.03.2014

Ostrzeżenie: (0%)
-----


A nie lepiej przekierowanie w .htaccess?

Kod
RewriteEngine On
RewriteCond %{HTTP_HOST} ^staradomena.com$ [OR]
RewriteCond %{HTTP_HOST} ^www.staradomena.com$
RewriteCond %{REQUEST_URI}  .(jpg|html)$
RewriteRule ^(.*)$ http://www.nowadomena.com/%{REQUEST_URI} [R=301,L]


Dla dokładnie tych nazw:
Kod
RewriteCond %{REQUEST_URI}  (img.jpg|file.html)$


--------------------
Go to the top of the page
+Quote Post
uczeń php
post
Post #3





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 8.01.2010

Ostrzeżenie: (0%)
-----


  1. <div>Artykul TEKST TEKST <br /><div><span></span></div><div><span><img src ="http://sponsor_1.pl/baner_sponsora_1.jpg"></span></div>TEKST TEKST<br />TEKST TEKST<div><img src=/moja_fotka.jpg></div>Tekst Tekst<p><a href="next_page.html"></p>TEKST TEKST<p><a href="http://moj_przyjaciel.pl/"></a></p>
wykonaj reaplece on src=/moja_fotka.jpg and src=/next_page.html natomiast baner_sponsora i moj_ przyjaciel.pl pozostaw bez zmian!!! Oto mi chodzi tylko, ze drzewo ma o wiele wiecej poziomow, wiec sprawdz kazdy jeden poziom a napotkawszy czy to img moja_fotka czy to <a href="next_page.html"> zamien natomiast baner sponsora i linki do moich przyjaciol pozostaw bez zmian wink.gif

PS (Jest to serwis organizacji uzytku publicznego tych stron jest od groma i ciut ciut) zostalem poproszony o przeniesienie jego z html bo wszystko jest w html + javascripcie smile.gif do php dlatego tresci tych stron chcialbym zapisac tez w bazie danych mysql i to juz nie jako ogarnalem smile.gif ale teraz zamiana owych img i a href. Nie moge napisac jednego okreslonego wzorca, ze tak powiem, bo rozne strony maja rozne struktury tzn rozne poziomy drzew np na jednej stronie jest TEKST TEKST<div><span><img> a na drugiej jest TEKST TEKST <div><img> albo TEKST TEKST <img>, wiec musze wymyslic cos BARDZO UNIWERSALNEGO smile.gif a pojedynczo poprawiac "Z PALUCHA" to jestem chyba za bardzo leniwy smile.gif, a wiec chyba zostaje juz tylko DRZEWKO. Htaccess-a tez trudno mi sobie wyobrazic jakos bo samych podstron jest ciut ciut a jeszcze wiecej img i a href, wiec jak ma sie to do questionmark.gif
Cytat
Dla dokładnie tych nazw:
Kod
RewriteCond %{REQUEST_URI} (img.jpg|file.html)$


Ten post edytował uczeń php 13.07.2016, 09:33:48
Go to the top of the page
+Quote Post
IAmBoskiM
post
Post #4





Grupa: Zarejestrowani
Postów: 72
Pomógł: 11
Dołączył: 8.05.2016

Ostrzeżenie: (0%)
-----


Ejejej, ale po co ci do tego PHP? Od tego jest JS.

Btw, jak już podajesz kod, to z enterami i tabami...

Tym elemntom, którym chcesz coś podmienić nadajesz jakieś id, ew. klasę i potem zabawa w JS.
[JAVASCRIPT] pobierz, plaintext
  1. var img = document.getElementById('id');
  2. img.src = 'twoj_src';
[JAVASCRIPT] pobierz, plaintext

I będzie to uniwersalne jeżeli nadasz na tych wieli stronach tym samym elementom te same ID bądź klasę. A jeżeli z PHP chcesz przekazać jakąś zmienną, np. zawartość twoj_src to robisz to tak:
  1. $src = 'twoj_src';
  2. echo "<script>var mojSrc = '$src';</script>";
Go to the top of the page
+Quote Post
uczeń php
post
Post #5





Grupa: Zarejestrowani
Postów: 159
Pomógł: 0
Dołączył: 8.01.2010

Ostrzeżenie: (0%)
-----


Chcialem to zrobic w LOCIE smile.gif a wiec pobierz strone znajdz odpowiednia sekcje gdzie jest sama tresc bez head bez title i <script type='text/javascript'> i bez tym podobnych plikow i innych pierdol, Nastepnie w tej oto czesci html gdzie jest artykul i fotki podmien te ktore sa mi potrzebne nastepnie, po czym zapisz je na bazie danych tworzac odpowiednia tabele gdzie nazwa tabeli odpowiada nazwie podstrony. oneeyedsmiley02.png
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 01:02