PDA

Просмотр полной версии : php Скрипт разблокировки


stepashka_
23.04.2010, 15:28
Всем привет.

Есть html код
<input name="success_url" id="success_url" value="" type="hidden">
<input name="fail_url" id="fail_url" value="" type="hidden">
<input name="try_to_login" id="try_to_login" value="1" type="hidden">
<table align="center" border="0" cellpadding="0" cell <td width="150">
<div class='dld' <center><label for="pass">Код активации:</label>
<form action="" method="post"> <input type="text" name="code"><br><br>
<input type="submit" name="ok" value="Активировать анкету"> </form>
</div></center>
Нужно что бы при нажатии на "Активировать" если код введён верно перебрасывало на другой сайт.
Если не верно то просило попробовать ещё.

Пробовал так
<input name="success_url" id="success_url" value="" type="hidden">
<input name="fail_url" id="fail_url" value="" type="hidden">
<input name="try_to_login" id="try_to_login" value="1" type="hidden">
<table align="center" border="0" cellpadding="0" cell <td width="150">
<div class='dld'
<center><label for="pass">Код активации:</label>
<form action="" method="post">
<input type="text" name="code"><br><br>
<input type="submit" name="ok" value="Активировать анкету"> if($code == "123123") { Header("Location: $link"); die(); } </form>
</div></center>

Ничего не вышло имхо бред :(

Deathdreams
23.04.2010, 15:31
if($_POST['code'] == "123123") { @header("Location: $link"); die(); }
<input name="success_url" id="success_url" value="" type="hidden"> <input name="fail_url" id="fail_url" value="" type="hidden"> <input name="try_to_login" id="try_to_login" value="1" type="hidden"> <table align="center" border="0" cellpadding="0" cell <td width="150"> <div class='dld' <center><label for="pass">Код активации:</label> <form action="" method="post"> <input type="text" name="code"><br><br> <input type="submit" name="ok" value="Активировать анкету"> </form> </div></center>

stepashka_
23.04.2010, 15:37
Можно подробнее? Не силён в php

Deathdreams
23.04.2010, 15:52
<?php
$link = 'http://example.com'; //куда перенаправлять
$code = 12345; //правильный код
if($_POST['code'] == $code) { @header("Location: {$link}"); die(); }
?>

<input name="success_url" id="success_url" value="" type="hidden">
<input name="fail_url" id="fail_url" value="" type="hidden">
<input name="try_to_login" id="try_to_login" value="1" type="hidden">
<table align="center" border="0" cellpadding="0" cell <td width="150">
<div class='dld' <center><label for="pass">Код активации:</label>
<form action="" method="post"> <input type="text" name="code"><br><br>
<input type="submit" name="ok" value="Активировать анкету">

</form>
</div></center>

stepashka_
23.04.2010, 16:04
Deathdreams, спасибо тебе.
НО при вводе кода скрывается окно ативации а перенаправление на сайт не идёт :(

Deathdreams
23.04.2010, 16:14
Deathdreams, спасибо тебе.
НО при вводе кода скрывается окно ативации а перенаправление на сайт не идёт :(
@header('Location: '.$link) or die("<meta http-equiv='Refresh' content=0; URL=".$link.">");

stepashka_
23.04.2010, 16:46
Всё равно не перенаправляет, отправил тебе в ЛС сайт

$now
23.04.2010, 17:13
Перенарпавление делается так

header(“HTTP/1.1 301 Moved Permanently”);
header(“Location: http://site.com/pagename.html”);


И надо помнить, что если хотя бы один символ уже выведен хедер не выставится, и ничего не сработает.

То есть этот код надо писать в самом начале страници.

stepashka_
23.04.2010, 17:17
Перенарпавление делается так

header(“HTTP/1.1 301 Moved Permanently”);
header(“Location: http://site.com/pagename.html”);


И надо помнить, что если хотя бы один символ уже выведен хедер не выставится, и ничего не сработает.

То есть этот код надо писать в самом начале страници.
Я знаю как делается перенаправление, оно мне нужно после введения кода + код должен быть правельный :)

$now
23.04.2010, 17:34
Я знаю как делается перенаправление, оно мне нужно после введения кода + код должен быть правельный :)



<?php
$link = 'http://example.com'; //куда перенаправлять
$code = '12345'; //правильный код
if($_POST['code'] === $code) {
header(“HTTP/1.1 301 Moved Permanently”);
header(“Location: $link”);
}
?>


Обратите внимание - верный код взят в кавычки, а сравнение тройным равно. (строки не бывают ровны, они бывают подобны)

В предыдущем варианте вы сравнивали строку с числом, получали false естественно

PS И никакого die() не надо

nonamez
23.04.2010, 17:38
тибе что ле под тесты?могу скинуть пример платника тестового с оплатой по смс-сам писал

stepashka_
23.04.2010, 17:47
тибе что ле под тесты?могу скинуть пример платника тестового с оплатой по смс-сам писал
мне нужн сам пример ввода кода, ответ при правильном и ответ при не правильном коде :)

ReduKToR
23.04.2010, 17:52
оно мне нужно после введения кода + код должен быть правельный


<?php
$link = 'http://example.com'; //куда перенаправлять
$code = 12345; //правильный код
if($_POST['code'] == $code) { echo'<META HTTP-EQUIV="Refresh" CONTENT="0; URL='.$link.'">'; }

echo'
<form action="" method="post"> Код активации:<input type="text" name="code"><br><br>
<input type="submit" name="ok" value="Активировать анкету">

</form>'; ?>


м?

Nelzone
23.04.2010, 17:53
через else можно или как там

ReduKToR
23.04.2010, 17:57
через else можно или как там


<?php
$link = 'http://example.com'; //куда перенаправлять
$code = 12345; //правильный код
if($_POST['code'] = $code)
{
echo'<META HTTP-EQUIV="Refresh" CONTENT="0; URL='.$link.'">';
}
else
{
echo'Введен неверный код!';
}

echo' <form method="post"> Код активации:<input type="text" name="code">
<input type="submit" name="submit" value="Активировать анкету">
</form>';
?>
Ты про это?

$now
23.04.2010, 18:00
Все отлично только зачем же html код засовывать в echo?
И у формы лучше все же указаь в action самого себя.

ReduKToR
23.04.2010, 18:02
$now,я извращенец и люблю мешать код с html
Если форма будет находится на отдельной странице, то необязательно!

$now
23.04.2010, 18:04
ReduKToR
Вы php не знаете.

Выражение ($_POST['code'] = $code) Всегда истинно

stepashka_
23.04.2010, 18:05
ReduKToR спасибо

ReduKToR
23.04.2010, 18:05
$now, Вы меня незнает,и что? вам живется хуже?


Выражение ($_POST['code'] = $code) Всегда истинно
Ну пропустил "=" , ТС не тупой, поставит сам.

stepashka_
27.04.2010, 13:07
up

Подскажите как сделать в коде

<?php
$link = 'http://forum.antichat.ru'; //куда перенаправлять
$code = 209347830; //правильный код
if($_POST['code'] == $code) { echo'<META HTTP-EQUIV="Refresh" CONTENT="0; URL='.$link.'">'; }

echo'
<input name="success_url" id="success_url" value="" type="hidden">
<input name="fail_url" id="fail_url" value="" type="hidden">
<input name="try_to_login" id="try_to_login" value="1" type="hidden">
<table align="center" border="0" cellpadding="0"> <td width="150">
<center><div class="dld"><label for="pass">Код активации:</label>
<form action="" method="post">
<input type="text" name="code"><br><br>
<input type="submit" name="ok" value="Активировать анкету"></form>
</div></center>

</form>';
?>
Там где стоит правильный код, перенаправление производилось при вводе любого девяти значного числа.

Deathdreams
27.04.2010, 13:48
<?php
$link = 'http://forum.antichat.ru'; //куда перенаправлять
if(strlen($_POST['code']) == 9) { echo '<META HTTP-EQUIV="Refresh" CONTENT="0; URL='.$link.'">'; }

?>
<input name="success_url" id="success_url" value="" type="hidden">
<input name="fail_url" id="fail_url" value="" type="hidden">
<input name="try_to_login" id="try_to_login" value="1" type="hidden">
<table align="center" border="0" cellpadding="0"> <td width="150">
<center><div class="dld"><label for="pass">Код активации:</label>
<form action="" method="post">
<input type="text" name="code"><br><br>
<input type="submit" name="ok" value="Активировать анкету"></form>
</div></center>

</form>

stepashka_
27.04.2010, 14:06
Deathdreams спасибо !