28. marts 2006 - 14:34
Der er
20 kommentarer og 1 løsning
Find billeder på siden, men?
Hej allesammen. Bruger denne kode : $content = file_get_contents($sti); if(preg_match_all('/img src="(.+?)"/', $content, $output)){} return $output[0][4]; Til at finde alle billederne på en side. Og retunere billede 4. Men ville gerne have den ikke tog de billeder med som hed noget af disse : "header" og "broder". Kan man lave det ? På forhånd tak.
Annonceindlæg tema
Offentlig digitalisering
Fra effektivisering til digital suverænitet. Hvordan skaber det offentlige en digital fremtid med AI, sikkerhed og kontrol i centrum?
28. marts 2006 - 17:45
#1
Hvad med at bruge array_filter? function checkItem($item) { return ( strpos( $item, "header" ) > 0 || strpos( $item, "broder" ) > 0 ); } Med en lidt modificeret del af din kode: if(preg_match_all('/img src="(.+?)"/', $content, $output)){} $result = array_filter($output[0], "checkItem"); return $result;
28. marts 2006 - 17:45
#2
return $result[4] skulle det have været...
28. marts 2006 - 19:11
#3
Vil den så tage de 4 billede af dem den finder ?
28. marts 2006 - 19:19
#4
Den finder dem stadig.. billeder hvor Header er indblandet bliver ikke plukket fra :( ..
28. marts 2006 - 19:44
#5
Header eller header - stort eller småt - der er forskel. Hvis det er med stort, så ret funktionen. Ellers brug preg_match/eregi... Nu jeg tænker mig om bør det faktisk være: function checkItem($item) { return ( strpos( $item, "header" ) == 0 && strpos( $item, "broder" ) == 0 ); } :)
28. marts 2006 - 23:28
#6
Så spørger jeg igen :P Function checkItem($item) { return ( strpos( $item, "header" ) == 0 && strpos( $item, "broder" ) == 0 ); } if(preg_match_all('/img src="(.+?)"/', $content, $output)){} $result = array_filter($output[0], checkItem); return $result[1]; Den giver desværre denne fejl : Fatal error: Cannot redeclare checkitem() (previously declared in /home/www/web82/html/mysex/findt.php:26) in /home/www/web82/html/mysex/findt.php on line 26 som er: Function checkItem($item) Det nok fordi item er tom, men hvad skal der ind :S
29. marts 2006 - 00:38
#7
Den skal se sådan ud: function checkItem($item) { return ( strpos( $item, "header" ) === false && strpos( $item, "broder" ) === false ) } if(preg_match_all('/img src="(.+?)"/', $content, $output)){} $result = array_filter($output[0], "checkItem"); return $result[1]; :)
29. marts 2006 - 00:39
#8
Bemærk at jeg har ændret til === false og at jeg har smidt " omkring i array_filter
29. marts 2006 - 12:09
#9
jeg får en fejl :S Parse error: parse error, unexpected '}' in /home/www/web82/html/mysex/findt.php on line 29 som er } i slutningen af funktionen checkitem.
29. marts 2006 - 12:18
#10
Der mangler et ; i slutningen af return linjen :P
29. marts 2006 - 12:41
#11
jeg for samme fejl :( Fatal error: Cannot redeclare checkitem() (previously declared in /home/www/web82/html/mysex/findt.php:26) in /home/www/web82/html/mysex/findt.php on line 26
29. marts 2006 - 12:59
#12
Du gør noget forkert, smid koden her og lad os se :)
29. marts 2006 - 13:03
#13
Du for lige en del af min kode, da den er lang: Function testfilm($sti) { $content = file_get_contents($sti); function checkItem($item) { return ( strpos( $item, "header" ) === false && strpos( $item, "broder" ) === false ); } if(preg_match_all('/img src="(.+?)"/', $content, $output)){} $result = array_filter($output[0], "checkItem"); return $result[1]; } Den bliver kaldt så ledes : $test = testfilm($side[0]); $side[0] indeholder en hjemmeside adresse. Kan du så fejlen af denne stump ?
29. marts 2006 - 13:27
#14
Hvad er linje 26? Du kan roligt flytte checkItem funktionen ud på samme niveau som testfilm er...
29. marts 2006 - 13:56
#15
for ikke nogen fejl mere, men der er en anden ting som går galt. Det kun billedet som ikke må hedde noget med broder og header. hvis et billede har denne sti: <img src="www.domæne.dk/billede.jpg" border="1"> Afviser scriptet også denne fil :( ..
29. marts 2006 - 13:57
#16
altså billede må ikke hedde noget ala: header_23.jpg broder_2.jpg
29. marts 2006 - 14:54
#17
Prøv lige: function checkItem($item) { return ( strpos( $item, "header" ) === false && strpos( $item, "broder" ) === false ); } function testfilm($sti) { $content = file_get_contents($sti); $result = ""; if ( preg_match_all('/img src="(.+?)"/', $content, $output) ) { $tmp = array_filter($output[1], "checkItem"); $result = $tmp[4]; } return $result; } Den afviser billeder der hedder noget med header og broder i navnet :) Den returnerer det 4. billede...
29. marts 2006 - 15:05
#18
Tusind tak det virker. Har et spm, mere men opretter et net spm, da du virkelig har gjordt det godt :D.. Der du meget velkommen til at svarer. Da det handler om samme funktion. Svar.
29. marts 2006 - 15:35
#19
Ah godt det virker :)
29. marts 2006 - 16:35
#20
Coderdk kan virkelig ikke få det til at virke igen.. Det virkede lige hurtigt.. Kig efter en ny tråd :P
29. marts 2006 - 17:47
#21
Vi tilbyder markedets bedste kurser inden for webudvikling