SearchEngines.bg

Това е примерно съобщение за гост. Регистрирайте безплатен акаунт днес, за да станете потребител на SearchEngines.bg! След като влезете, ще можете да участвате в този сайт, като добавите свои собствени теми и публикации, както и да се свържете с други членове чрез вашата лична входяща кутия! Благодарим ви!

PHP код за линк с променлив текст

KOBRETI

New member
Когато някой слага линкове към мен на сайта си, ако са приемрно site-wide, гледам ако може да му дам следния код, та линковете да не са с еднакъв текст. Надявам се да е полезно на някого :)

PHP:
<?php
$link = array(
"Картинг",
"Картинг портал",
"Картинг пилоти",
"Картинг форум",
"Картинг магазин",
"Картинг новини",
"Картинг писти"
// И така нататък, слагате колкото искате текстове, 
//само внимавате с последната запетая :)
);

$weburl = strtoupper($_SERVER["REQUEST_URI"]);
$key_sum = crc32($weburl);
mt_srand($key_sum);
$rand_word_index  = mt_rand(0, count($link)-1);  
print "<a target=\"_blank\" href='http://auto-kart.com/'>". 
    $link[$rand_word_index]. "</a>\n";
?>

Това, което прави кодът, е че визуализира една от тези фрази като анкор текст, с бонуса, че той никога не се мени за дадената страница, но същевременно е различен на различните страници :)
 
Re: PHP код за линк с променлив текст

Аз не разбирам много от пхп, но като го гледам това, ми се струва, че записва и чете в/от базата данни. Та въпроса ми е: тябва ли му на този скрипт достъп до базата и каква е вероятността ако се сложи в някой CMS, в който има много таблици и променливи, този скрипт да прецака нещо?
 
Re: PHP код за линк с променлив текст

Бъркаш се - не чете от база данни.
Въпреки това не бих го ползвал - няма смисъл да се изчислява всеки път нещо, което се въвежда само веднъж.
 
Re: PHP код за линк с променлив текст

Бъркаш се - не чете от база данни.
Въпреки това не бих го ползвал - няма смисъл да се изчислява всеки път нещо, което се въвежда само веднъж.
 
Re: PHP код за линк с променлив текст

Аз не разбирам много от пхп, но като го гледам това, ми се струва, че записва и чете в/от базата данни. Та въпроса ми е: тябва ли му на този скрипт достъп до базата и каква е вероятността ако се сложи в някой CMS, в който има много таблици и променливи, този скрипт да прецака нещо?

Не не чете от база данни. Иначе браво наистина и на мен много ми допадна идеята. :)

Много бързо са ме изпреварили с одговора :)
 
Последно редактирано:
Re: PHP код за линк с променлив текст

с бонуса, че той никога не се мени за дадената страница, но същевременно е различен на различните страници :)

Хитро, все пак бих махнал тези редове:
Код:
$weburl = strtoupper($_SERVER["REQUEST_URI"]);
$key_sum = crc32($weburl);
mt_srand($key_sum);

Останалото си мисля, че е достатъчно.

не е ли точно в тези редове пиниза за бонуса по-горе?И ако да автора би ли обяснил.Ако не е, пак.
 
Re: PHP код за линк с променлив текст

не е ли точно в тези редове пиниза за бонуса по-горе?И ако да автора би ли обяснил.Ако не е, пак.

А там си е и наистина е идейно, но ако в кода, където се слага това PHP има ранд функция СЛЕД линка, няма да е много ранд. :D
Освен ако не може да се "ресетне" някак тоя seed? Не съм запознат, но така даден примера скофтва слдващо ползване на ранд.
 
Re: PHP код за линк с променлив текст

mlazarov, става въпрос да се използва за много голям списък, 100-150 ключови израза - ще автоматизира малко нещата. Пращаш на всички "приятелски сайтове" файла и забравяш.
 
Re: PHP код за линк с променлив текст

По ред на номерата :)
1. БД не се ползва
2. 3-те реда могат да се махнат, но няма да го има "бонуса" линковете да са постоянни на дадена страница
3. Скоростта едва ли има смисъл да се смята при такова елементарно изчисление :)
4. Мерси за зелените точки :)
5. Ако някой надолу ползва ранд без да си нулира солта, си е негов проблем :)
 
Re: PHP код за линк с променлив текст

По ред на номерата :)
5. Ако някой надолу ползва ранд без да си нулира солта, си е негов проблем :)

А как се ресетва?
Иначе ако някой иска да му сложа линк с такъв код, то проблема не е мой, а негов. :D
Така че, ако може някак да се ресетне и да работи нормално, би било добре да го има в кода след принтването на линка.

btw,
//само внимавате с последната запетая :)
работи и със запетая, въпреки, че няма нищо след нея.
Откак забелязах в някои примери нарочно да оставят зпетая и аз го правя така, понеже често допълвам масива и забравям запетаята.. :D
 
Re: PHP код за линк с променлив текст

А как се ресетва?
Иначе ако някой иска да му сложа линк с такъв код, то проблема не е мой, а негов. :D
Така че, ако може някак да се ресетне и да работи нормално, би било добре да го има в кода след принтването на линка.

btw,

работи и със запетая, въпреки, че няма нищо след нея.
Откак забелязах в някои примери нарочно да оставят зпетая и аз го правя така, понеже често допълвам масива и забравям запетаята.. :D
Ресетва се примерно така
http://www.php.net/manual/en/function.mt-srand.php
Но и без това е добра практика винаги да го ресетваш, преди да го ползваш. Следвайте добрите практики :D
PHP:
<?php
// seed with microseconds
function make_seed()
{
  list($usec, $sec) = explode(' ', microtime());
  return (float) $sec + ((float) $usec * 100000);
}
mt_srand(make_seed());
$randval = mt_rand();
?>
Ако толкова ви е страх да не прецакате ранда на някого, може да допишете това в кода - дори без последния ред :)

Ako наслагате някоя дума повече пъти, ще й увеличите тежестта в ранда :)

За запетаята имам предвид някой да не тръгне да дописва моя списък без да сложи запетая. Но иначе не знаех, че става и със забравена запетая накрая :)
 
Последно редактирано:
Re: PHP код за линк с променлив текст

Гледам, събраха се доста хора да четат, хайде докато така и така сте тук да ми пратите по 1 ЛС да обменим линкове и изтестваме кода :D
 
Re: PHP код за линк с променлив текст

и аз мислех някаква така хитрина преди време, но се чудех как най-леко и лесно да се реализира

кода е добър и хитър
Браво!
 

Горе