На форуме, уже не помню кто, но кто-то создал тему. Так вот меня заинтересовала мысль \»Вытянуть из web-sar.ru меню выбора вида рекламы\». В принципе можно бы и сказать, что это просто — через \»GET\» задавать значения option и просто прописать. Но не всё так-то просто. У web-sar\’а при выборе вида не надо перегружать страницу — у них форма заказа появляется снизу. Вот как сделать так, я сейчас и расскажу.На форуме, уже не помню кто, но кто-то создал тему. Так вот меня заинтересовала мысль \»Вытянуть из web-sar.ru меню выбора вида рекламы\». В принципе можно бы и сказать, что это просто — через \»GET\» задавать значения option и просто прописать. Но не всё так-то просто. У web-sar\’а при выборе вида не надо перегружать страницу — у них форма заказа появляется снизу. Вот как сделать так, я сейчас и расскажу.
Итак. Заметьте — web-sar\’а нет каптчи (кода-подтверждения) при заказе. Это не потому, что они не знают как сделать, а потому, что если пихать каптчу — то она будет грузиться несколько раз и выдавать разные цифры. В этом и есть основная проблема — даже если вводим правильный код, скрипт будет сверять с последней прогруженной картинкой с кодом. Ну что же, дело поправимое — пойдём по тому же пути, что и web-sar.
1. Удаляем каптчу в файлах заказа.
Файлы с формой заказа — думаю, их определить будет просто. Открываем advertise.php и ищем строки примерного содержания:
$adv=$_GET["adv"];
if($adv=='run') include('addrunblock.php');
if($adv=='dyn') include('adv.php');
if($adv=='stat') include('addstatlink.php');
if($adv=='banner') include('addbanner.php');
if($adv=='frame') include('addframeads.php');
if($adv=='chat') include('addchatads.php');
?>
Вот то что стоит в скобках после include — это и есть имя файла с формой заказа. Их все по очереди открываем и проделываем следующее:
Удаляем строки:
{
echo "<img src="images/error.png" align="middle"> Неверно введен код с картинки… <br>";
include('footer.php');
exit();
}
В этих строках у нас сверяется введённый код с заданным.
И затем удаляем строки:
<td width="150" align="left"><p><label>Введите код: </label></p></td>
<td width="250" align="left"><input type='text' size='3' maxlength='3' name='code' autocomplete="off" class="securitycode" value="" tabindex="9" /></td>
</tr>
<tr>
<td width="150" align="left"> </td>
<td width="250" align="left"><img src="image.php?<?php echo $res; ?>" /></td>
</tr>
Это обычный HTML код строк в таблице. Мы их удаляем, чтобы вообще не отображались. А то найдутся горе-умники, которые начнут предлагать свои услуги по смыканию глобальной переменной для того, чтобы каптчу проверяло. Нам этого естественно не надо. Строки убрали…
2.Основная работа будет в файле advertise.php. Почему именно в нём? В нём проще — всё же лучше в одном файле проставлять значения, чем лезть в каждый файл за этим.
Значит что мы делаем:
2.1. Находим строки:
[center]<span style="font-size: 16px; font-weight: bold;">
.:: [url=advertise.php?adv=dyn]Динамические ссылки[/url] :: [url=advertise.php?adv=stat]Статические ссылки[/url] :: [url=advertise.php?adv=banner]Баннеры[/url] :: [url=advertise.php?adv=frame]Фрейм[/url] :: [url=advertise.php?adv=chat]Чат[/url] ::.
[/center]</span>
</div
Заметьте, что тег не закрыт — такое почти во всех скриптах. Но нам на это наплевать. Даже если закрыт — то вместе с закрытым и удаляем.
2.2. На место кода, который только что ушёл в небытие, вставляем новенький:
<!—
function advChange(seln)
{ //selNum = seln.selectedIndex;
//Isel = seln.beer.options[selNum].text;
//alert("Выбрано: "+Isel);
document.getElementById("dyn_link").style.display = 'none';
document.getElementById("stat_link").style.display = 'none';
document.getElementById("stat_ban").style.display = 'none';
document.getElementById("run_block").style.display = 'none';
document.getElementById("frame_ads").style.display = 'none';
document.getElementById("chat_ads").style.display = 'none';
switch (document.getElementById("advlist").selectedIndex)
{
case 0:
break;
case 1:
document.getElementById("dyn_link").style.display = 'block';
break;
case 2:
document.getElementById("stat_link").style.display = 'block';
break;
case 3:
document.getElementById("stat_ban").style.display = 'block';
break;
case 4:
document.getElementById("run_block").style.display = 'block';
break;
case 5:
document.getElementById("frame_ads").style.display = 'block';
break;
case 6:
document.getElementById("chat_ads").style.display = 'block';
break;
}
}
//—>
</script>
<select id="advlist" name="advlist" onchange="advChange(this)">
<option selected>Выберите вид рекламы:</option>
<option>- Динамические ссылки</option>
<option>- Статические ссылки</option>
<option>- Статические баннеры</option>
<option>- Бегущая строка</option>
<option>- Ссылки во фрейме</option>
<option>- Ссылка в ЧАТе</option>
</select>
С этим кодом больше всего будет мучений. Но об этом позже.
2.3. Перед:
Добавим ещё код:
<div id="stat_link" style="display:none"><?include('addstatlink.php'); ?></div>
<div id="stat_ban" style="display:none"><?include('addbanner.php'); ?></div>
<div id="run_block" style="display:none"><?include('addrunblock.php'); ?></div>
<div id="frame_ads" style="display:none"><?include('addframeads.php'); ?></div>
<div id="chat_ads" style="display:none"><?include('addchatads.php'); ?></div>
В этом коде и заключается весь смысл…
Теперь поподробнее о мучениях. Рассмотрите код из пункта 2.2. — определите закономерность. Она примерно такова:
1. При добавлении нового вида рекламы мы делаем, что там в описании сказано (да-да — также добавляем строки вида if($adv==….., т.к. постом передаваться будет на страницу с параметром через гет — нам надо, чтобы у нас всё работало)
2. Добавляем после строки:
Такую же строку, только chat_ads заменяем на любое, придуманное нами значение. Значение это запоминаем.
3. Затем после строки:
document.getElementById("chat_ads").style.display = 'block';
break;
Добавляем этот же кусок. Но меняем 6 на следующее по счёту целое число (7) и значение chat_ads на то, которое придумали.
4. Далее ниже добавляем после:
Подобный код, где \»Ссылка в ЧАТе\» меняем на название вида рекламы (это уже неважно)
5. В самом конце мы перед футером добавляли код. В нём ищем строку:
И в ней заменяем chat_ads на наше значение, которое мы ещё не забыли и addchatads.php на имя страницы с формой заказа, которую мы заливали на хост при установке какого-нить плагина — это уже догадаться реально.
Статья требует доработок, но умный человек доработает под себя. Если следовать строго действиям, описанным выше и не сбиться, то всё получится.
Отправить комментарий
Вы должны быть зарегистрированы чтобы оставить комментарий.
Вы должны быть зарегистрированы чтобы оставить комментарий.