Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

klawdyo

com expressões regulares

Recommended Posts

Ele tem dois pequenos bugs. To colocando abaixo o código para que alguma alma boa contribua!! Valeu.

Quais?!?!?!

Compartilhar este post


Link para o post
Compartilhar em outros sites

por exemplo, a expressão regular procura por códigos nesse formato:

PHP [/tr][tr]

<a class=? href="foto1.jpg" target=?><img alt=? src="mini_foto1.jpg" border=?></a>

[/tr]

Entendeu? Se a mini_foto1.jpg é link para foto1.jpg, então ele exibe foto1.jpg.

 

Ele procura por fotos que são links para outras fotos. Os dois BUGs são os seguintes:

 

Se, a linhja que a Expressão procurar tiver uma quebra de linha no meio.

ex.:

PHP [/tr][tr]

<a class=? href="foto1.jpg"

target=?><img alt=? src="mini_foto1.jpg"

border=?></a>

[/tr]

 

O segundo é:

 

Se tiver duas, ou mais imagens dentro do mesmo link.

Ex:

PHP [/tr][tr]

<a href="foto1.jpg"><img src="mini_foto1.jpg"><img src="mini_foto1.jpg"></a>

[/tr]

 

Alguém pode me dar uma ajuda nesse problema?

 

Valeuuuuuuuu

 

Visite, e confira: http://fuckgle.maisemconta.com

Compartilhar este post


Link para o post
Compartilhar em outros sites

Cara, muito legal essa idéia! :D

 

Criei um script que busca por todas as fotos na página (inclusive as que estiverem nas folhas de estilo .css, como imagens de fundo, por exemplo). Acho que funcionaria pra pegar uma imagem que estivesse num link, tb... vou postar o código aqui.

 

Abraços!

 

 

 

<form name="form" method="get" action="<?php echo $_SERVER['SCRIPT_NAME']; ?>">

<input name="pagina" type="text" value="<?php echo @$_GET['pagina']; ?>" size="50" />

<input type="submit" />

</form>

 

<?php

 

 

$pagina = trim(@$_GET['pagina']);

 

foreach (imgs($pagina) as $imagem)

{

    echo '<b>' . basename($imagem) . '</b> .......... <img src="'.$imagem.'" border="1" align="top" /> <br /><br />'."\n\n";

}

 

 

 

 

function imgs($url, $pegar_repetidos = false) {

 

    $imgs = $out = array();

 

    if (preg_match("/[^\/]\/[^\w~_-]+?.[\w]+$/", $url))

    { // verifica se o link terminha num arquivo (por exemplo, index.php)

        $caminho = dirname($url).'/'; // se sim, pega somente a pasta, sem o nome do arquivo

    }

    else

    {  // se terminar numa pasta, garante que terá uma barra no final (pra evitar problemas na hora de gerar o caminho no "src")

        $caminho = (!preg_match("/\/$/", $url)) ? $url.'/' : $url;

    }

 

 

    //  Pega as imagens no código HTML

    $conteudo_html = @file_get_contents($url);

    preg_match_all("/[=\"':\s]([^\"'; ]+?\.(jpg|jpeg|gif|png|bmp))[\"'; ]/i", $conteudo_html, $out);

    foreach ($out[1] as $imagem)

    {

        $link_img = (!strstr($imagem, '

http://')) ? $caminho.$imagem : strstr($imagem, 'http://');

        $imgs[] = $link_img;

    }

 

 

    //  Pega as imagens nos arquivos .css

    $out = array();

    preg_match_all("/[=\"'

]([^\"]+\.css)/i", $conteudo_html, $out);

    $estilos = @array_unique($out[1]);

    if (count($estilos > 0))

    {

        foreach ($estilos as $css)

        {

            $link_css  = (!strstr($css, '

http://')) ? $caminho.$css : strstr($css, 'http://');

            $pasta_css  = (!strstr($css, '

http://')) ? $caminho.dirname($css).'/' : dirname(strstr($css, 'http://')).'/';

            $codigo_css = @file_get_contents($link_css);

            preg_match_all("/url\s*\([\"']?([^\"\)]+?\.(jpg|jpeg|gif|png|bmp))[\"']?\)/i", $codigo_css, $out);

            foreach ($out[1] as $imagem)

            {

                $link_img = (!strstr($imagem, 'http://')) ? $pasta_css.$imagem : strstr($imagem, 'http://');

                $imgs[] = $link_img;

            }

        }

    }

 

    if ($pegar_repetidos == false) { $imgs = array_unique($imgs); }

    return (array)$imgs;

}

 

 

?>

 

[/tr]

Compartilhar este post


Link para o post
Compartilhar em outros sites

O Código do: 'Illidan', dá no seguinte erro:

 

Security Alert! The PHP CGI cannot be accessed directly. This PHP CGI binary was compiled with force-cgi-redirect enabled. This means that a page will only be served up if the REDIRECT_STATUS CGI variable is set, e.g. via an Apache Action directive.For more information as to why this behaviour exists, see the manual page for CGI security.For more information about changing this behaviour or re-enabling this webserver, consult the installation file that came with this distribution, or visit the manual page.
e o código do: 'MUTANTE_POWER_B', necessita de uma class, q deve estar no arquivo:

PHP [/tr][tr]require_once "HTTP/Client.php";[/tr]

 

Flwwwwwwwwwwwww

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.