Özellikle php iş yardıma ihtiyacım, bunu nasıl bilmiyorum

3 Cevap

Ben bir şey yapmak istiyorum ama (php im newbie) bunu nasıl çözemiyorum

varsayalım, ben, bu preg_replace ile yaşamak gösterir URL listesi var

$html = preg_replace('/\s(\w+:\/\/)(\S+)/', ' <a href="http://localhost/get.php?url=\\1\\2" target="_blank"> GO</a> ', $html);

benim çıktı gibi

http://localhost/get.php?url=http://yahoo.com

onun çıktı sayfasında bağlantıları, şimdi ben ön sayfasında bunları gizlemek ve onları tıklanabilir yapmak istiyorum ve çalışma olduğunu görebilirsiniz açıktır

değişkenlerin içine bağlantıları değiştirmek ve ardından tıklayarak ve bir şey biz ön sayfasında linke tıklayarak gibi aynı şeyi gerçekleştirebilirsiniz Backgroud çalışır onları çağırabilir gibi bir şey

ya o biraz kafa karıştırıcı gibi görünüyor: (

3 Cevap

bazı kullanıcılar bağlantı $ _SESSION gelen url alınamadı ve ona yönlendirmek tıkladığınızda bir $ _SESSION vars içine url kaydetmek ve olabilir ...

//page1 - parse, save link in session and print a call to page2
<?php
session_start();
$_SESSION['url'] = preg_replace('/\s(\w+:\/\/)(\S+)/', ' <a href="http://localhost/get.php?url=\\1\\2" target="_blank"> GO</a> ', $html);
 .... 
echo '<a href="./page2.php">GO</a>';
?>
//page2 
<?php
session_start();
header('Location: '.$_SESSION['url']);
?>

I ne demek undeerstood eğer ...

Açıkçası şimdi tek bir dize olarak $ _SESSION ['url'] kullanılan, ancak intead çok boyutlu bir dizi kullanabilirsiniz ...

GÜNCELLEME:

anyway is better if you use an array on script.. example: http://www.test.org/go.php?page=# (where # is a number)

<?php

$array=("http://www.google.com","http://stackoverfloc.com","ecc");
//you can add more contorl in if statement, like between etc...
if (is_numeric($_GET['page']) header('Location: '.$array[$_GET['page']]);
?>

Ben, belki özür oldukça iyi anlayarak, ama değilim değilim, iyi approch yan sunucusu için bir dizi kullanmak ve kullanmak değil başka bir değişken yapmak için al?

= yahoo örneğin? bağlantı

ve daha sonra

url dizi bağlantısını bulmak?

Arada BY, ben NoScript ve bir uyarı gibi raporlar beni kullanıyorum ..

Bu gibi bakarak ile bağlantılar kurmak:

yourdomain.com/redirector.ph?url=#

# bir tanımlayıcıyı temsil eder.

Redirector.php yılında bu tanımlayıcı biliyorum eğer kontrol ve yönlendirme HTTP Header gönderin:

header ("Location: http://www.example.com/");

Important Note:

Eğer idam olmayacak gönderdikten sonra başlık ve kodu göndermeden önce herhangi bir veri göndermek olmayabilir.

Info

http://php.net/manual/en/function.header.php

EDIT

Bu başlığı kullanılarak standart açısından kesinlikle doğru değildir, ama cevap gerçekten başka bir yerde olduğu gibi, çok uzakta değil.