login  Naam:   Wachtwoord: 
Registreer je!
 Forum

explode vraag/probleem

Offline kickasgamer - 04/10/2007 17:38 (laatste wijziging 04/10/2007 17:39)
Avatar van kickasgamerPHP ver gevorderde ik wil uit dit stukje html code de url halen van de image

Citaat:
<img class="******" height="64" width="64" src="http://****/***/sd/qN/12dsb2JhbC8XCgRcBxwAGABaL3RpbGUvMC8yODAwYwAAAAAAAAD4otqR.jpg" alt="****" title="****" />


ik doe dit nu via deze manier:
  1. $get_tile = explode('<img class="******" height="64" width="64" src="',$content);
  2. $tile = explode('" alt', $get_tile[1]);


maar dit werkt niet want dan heeft $tile[0] geen waarde
en deze notice krijg ik als ik errorreporting opzet
Citaat:
<b>Notice</b>: Undefined offset: 1 in <b>/home/media/domains/fi-media.net/public_html/jeroen/gt/gamercard2.php</b> on line <b>27</b><br />
<br />

11 antwoorden

Gesponsorde links
Offline Rens - 04/10/2007 17:41
Avatar van Rens Gouden medaille

Crew algemeen
Explode op double quotes (").
Loop vervolgens door de array, en kijk wanneer er een url gematched word met een regex?
Offline kickasgamer - 04/10/2007 17:46 (laatste wijziging 04/10/2007 17:50)
Avatar van kickasgamer PHP ver gevorderde en gaat dat gemakkelijker gaan dan zo'n explode? ohja en weet jij soms dan ook wrm mijn manier niet werkt (en dus een notice geeft ?)

EDIT: en met welke funcite moet ik die array juist door lopen ?
Offline HOND_NL - 04/10/2007 17:51
Avatar van HOND_NL Nieuw lid kleine functie die handig zou kunnen zijn


  1. function cut($start,$end,$word)
  2. {
  3.  
  4. $startposition = strpos($word,$start); // startpostitie
  5. if($startposition > 0){
  6. $word=substr($word,strpos($word,$start)+strlen($start));
  7.  
  8. $word=substr($word,0,strpos($word,$end));
  9. return $word;
  10.  
  11.  
  12. }
  13.  
  14.  
  15.  
  16. else{
  17.  
  18. return false;
  19. }
  20.  
  21. }



uitleg:


  1. $ripit='img class="******" height="64" width="64" src="http://****/***/sd/qN/12dsb2JhbC8XCgRcBxwAGABaL3RpbGUvMC8yODAwYwAAAAAAAAD4otqR.jpg" alt="****" title="****" />';
  2.  
  3. $url=cut("src=","alt=",$ripit);


Offline kickasgamer - 04/10/2007 17:53
Avatar van kickasgamer PHP ver gevorderde maat het vervelende is dat ik dat explode vanaf een soort van profiel pagian, dus diehtml altijd iets anderser is (juist de image link is verschillend)
Offline HOND_NL - 04/10/2007 18:09
Avatar van HOND_NL Nieuw lid is toch juist geen probleem met die cut functie?
Offline Jero3n - 04/10/2007 19:14
Avatar van Jero3n PHP interesse Hij wil denk ik het met meerdere imgs doen, en dan moet hij ze dus niet allemaal in ripit zetten, maar in een array ofzo 
Offline kickasgamer - 04/10/2007 19:35
Avatar van kickasgamer PHP ver gevorderde
HOND_NL schreef:
is toch juist geen probleem met die cut functie?

hoe meot ik die $ripit dan invullen ?
Offline HOND_NL - 04/10/2007 20:09
Avatar van HOND_NL Nieuw lid Gooi je complete code eens online , zal ik eens kijken ...

maar het zou gewoon hetzelfte zoals je explode nu gebruikt, alleen nu gebruik je cut..
Offline kickasgamer - 04/10/2007 20:21 (laatste wijziging 05/10/2007 16:43)
Avatar van kickasgamer PHP ver gevorderde ik kan de code niet online plaatsen omdat er stukken van de code van men vriend bijzit en ik weet niet als hij dat wilt
maar ik zal het effe voorstellen wat ik wil 

zo ziet de code uit
Citaat:
<img class="******" height="64" width="64" src="http://****/***/sd/qN/12dsb2JhbC8XCgRcBxwAGABaL3RpbGUvMC8yODAwYwAAAAAAAAD4otqR.jpg" alt="****" title="****" />

maar iedere keer een verschillende image link(per user) dusik wil enkel de image link eruit halen
;)

EDIT: of zou iemand willen uitleggen wrm dat de explode van in mijn start post niet werkt ?
Offline timmie_loots - 05/10/2007 19:08 (laatste wijziging 05/10/2007 19:51)
Avatar van timmie_loots PHP gevorderde
  1. preg_match_all("/\<img (.*) alt=\"(.*)\" (.*) \/\>/si", $code, $matches);
  2.  
  3. echo $matches[2][0];


ff zorgen dat die code in $code staat, of die variabele hernoemen.

EDIT: Erg netjes is mijn regex niet btw, maar verbeteren laat ik aan jou over. Snap je niks van regular expressions, dan verwijs ik je door naar http://www.regular-expressions.info.
Offline kickasgamer - 05/10/2007 20:42 (laatste wijziging 06/10/2007 10:11)
Avatar van kickasgamer PHP ver gevorderde ik heb nu een nieuw probleem, tis me gelukt om het script werkend te krijgen maar nu is de inhoud van die $match[2][0] = " border="0" id="DCSIMG" width="1" height="1

en dat moet ik juist niet hebben

nu ziet men code er zo uit
  1. preg_match_all("/\<img (.*) alt=\"(.*)\" (.*) \/\>/si", $content, $tile);
  2. $tile_jpg = imagecreatefromjpeg($tile[2][0]);


$content = file_get_content($site);

EDIT: ik hbe even gezocht vanwaar die dat stukje code hallt, en nu blijkt dat die regex die info haalt uit de allerlaatste image tag van de html code
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.22s