- Поисковые системы
- Практика оптимизации
- Трафик для сайтов
- Монетизация сайтов
- Сайтостроение
- Социальный Маркетинг
- Общение профессионалов
- Биржа и продажа
- Финансовые объявления
- Работа на постоянной основе
- Сайты - покупка, продажа
- Соцсети: страницы, группы, приложения
- Сайты без доменов
- Трафик, тизерная и баннерная реклама
- Продажа, оценка, регистрация доменов
- Ссылки - обмен, покупка, продажа
- Программы и скрипты
- Размещение статей
- Инфопродукты
- Прочие цифровые товары
- Работа и услуги для вебмастера
- Оптимизация, продвижение и аудит
- Ведение рекламных кампаний
- Услуги в области SMM
- Программирование
- Администрирование серверов и сайтов
- Прокси, ВПН, анонимайзеры, IP
- Платное обучение, вебинары
- Регистрация в каталогах
- Копирайтинг, переводы
- Дизайн
- Usability: консультации и аудит
- Изготовление сайтов
- Наполнение сайтов
- Прочие услуги
- Не про работу
Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий
как форме дописать чтоб передавало? или всё верно сделать)
<form action="/pass.php" method="post">
<p style="text-align: center;"> <strong><input type="text" style="width: 130px; height: 23px;" name="key" /> ***160;<input type="submit" onmouseover="highlight(this,'#ffcc99')" onMouseout="highlight(this,document.bgColor)" name="enter_key" " style="width: 120px; height: 25px;" value="Войти »" <a class="tooltiper" style="cursor:pointer;" title="казино"/></a></strong></p>
</form>
выходит надо еще написать name=code и в скрипт пхп что-то добавить? $_POST['code']
Да уж батенька, да Вы азы не знаете.
<?
error_reporting (E_ALL); // для вас это обязательная строка
if(isset($_POST['ааа'])){echo $_POST['ааа'];}
?>
<form action="http://....ru/index.php" method="post">
<input type="text" name="ааа" size="40" value="">
<input type="submit" value="send" />
</form>
замените в коде формы
'height: 23px;" name="key"'
на
'height: 23px;" name="code"'
и не забиваете в этот инпут
343434
(а Вы это делаете судя по тексту тестирования данных
$_POST
Array
(
[key] => 343434
[enter_key] => Войти »
)
)
а Вам нужно набирать там
888766
и уберите из текста формы
'name="enter_key"'
потому что Вам не нужно значение этого инпута передавать на сервер,
тогда не будет присылаться на сервер из формы переменная
[enter_key] => Войти »
и '<a class="tooltiper" style="cursorointer;" title="казино"/></a>' тоже наверно нужно удалить (но это Вам решать)
Функцию-велосипед, можно заменить кстати на in_array :)
Короче нечё невышло.
Проблема осталась, если нечего невводить один фиг 404.хтмл или любой код хоть и верный.
Сделал следущее.
<?
error_reporting (E_ALL); // для вас это обязательная строка
if(isset($_POST['code'])){echo $_POST['code'];}
?>
<form action="/pass.php" method="post">
<p style="text-align: center;"> <strong><input type="text" style="width: 130px; height: 23px;" name="code" /> ***160;<input type="submit" onmouseover="highlight(this,'#ffcc99')" onMouseout="highlight(this,document.bgColor)" " style="width: 120px; height: 25px;" value="Войти »" <a class="tooltiper" style="cursor:pointer;" title="казино"/></a></strong></p>
</form>
сам скрипт куда запрос идёт. права поставил на codes.txt 755
на скрипте 644. если как-то мож влияет.
<?php
define ('CODES_FILE', 'codes.txt');
function checkCode ($code) {
$codes_array = file(CODES_FILE);
foreach ($codes_array as $cur_code) {
if (trim($cur_code) == $code) {
return true;
}else{
return false;
}
}
}
if (checkCode(@$_POST['code']) == false) {
header ('Location: http://ххх.ru/404.html');
exit;
}
header ('Location: http://xxx.ru/pag/xxx.html');
?>
С проверкой кода выдаёт.
$_GET
Array
(
)
$_POST
Array
(
)
$codes_array
Array
(
[0] => 888776
)
---------------------------------------------
print '$_GET<br />';
print '<pre>';
print_r($_GET);
print '</pre><br /><br />';
print '$_POST<br />';
print '<pre>';
print_r($_POST);
print '</pre><br /><br />';
print '$codes_array<br />';
print '<pre>';
print_r($codes_array);
print '</pre><br /><br />';
exit;
------------------------------------------------------
Если ввел код левый то.
$_GET
Array
(
)
$_POST
Array
(
При коде
foreach ($codes_array as $cur_code) {
if (trim($cur_code) == $code) {
return true;
}else{
return false;
}
}
происходит сравнение только с первым заначением из массива кодов
нужно сделать так, чтоб сравнивалось до первого совпадения или со всеми
foreach ($codes_array as $cur_code) {
if (trim($cur_code) == $code) return true;
}
return false;
но, поскольку у Вас всего одно значение, не это причина неудачи
скорее всего у Вас что-то напутано с доменами (или папками)
raboota.ru и xxx.ru
если все файлы лежат в одной папке, то все работает.
У меня есть подозрение, что при удачном коде происходит редирект на
http://xxx.ru/pag/xxx.html
но почему-то снова перебрасывает на
"/pass.php"
и в этот раз уже не присылаются
Зачем городить столько всего?
---- файл php ----
<?php
if (!isset($_POST['code']) || !in_array($_POST['code'],array_map(file('codes.txt'),function($a){return trim($a);}))) {
header ("Location: http://ххх.ru/404.html");
exit;
}
// если пароль верный то выполняется код ниже
// разместите ниже ваш код
?>
--- файл html ----
<form action="my_script.php" method="post">
<input type="text" name="code">
<input type="submit">
</form>