пхп код

12
Trafikgon
На сайте с 24.10.2008
Offline
174
#11

как форме дописать чтоб передавало? или всё верно сделать)

<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>

. (#)
Trafikgon
На сайте с 24.10.2008
Offline
174
#12

выходит надо еще написать name=code и в скрипт пхп что-то добавить? $_POST['code']

P
На сайте с 25.10.2009
Offline
24
#13

Да уж батенька, да Вы азы не знаете.

<?

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>

Господа, не смыслящие, но любящие тупо голосовать. Пожалуйста отведите душу. Слева у комментария есть кнопка, тупо жмите занизить Prishelec(у) репутацию. \@,@/
gormarket
На сайте с 29.12.2010
Offline
47
#14

замените в коде формы

'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>' тоже наверно нужно удалить (но это Вам решать)

Товары и цены в магазинах Вашего города: Городской рынок (http://gormarket.ru/)
AH
На сайте с 17.12.2011
Offline
1
#15

Функцию-велосипед, можно заменить кстати на in_array :)

Trafikgon
На сайте с 24.10.2008
Offline
174
#16

Короче нечё невышло.

Проблема осталась, если нечего невводить один фиг 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

(

 => 6565656

)


$codes_array
Array
(
[0] => 888766
)

---------- Добавлено в 11:15 ---------- Предыдущее сообщение было в 11:10 ----------

сохранил пхп скрипт в utf-8
начел выдовать когда что либо вводишь ошибку
Warning: Cannot modify header information - headers already sent by (output started at /home/mp3poisk/raboota.ru/password.php:1) in /home/mp3poisk/xxx.ru/pass.php on line 15

---------- Добавлено в 11:21 ---------- Предыдущее сообщение было в 11:15 ----------

урааааааа всё заработало всем + 10000)
gormarket
На сайте с 29.12.2010
Offline
47
#17

При коде

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"

и в этот раз уже не присылаются

 и массив $_POST оказывается пустым

Может у Вас в папках
/home/mp3poisk/raboota.ru/
и
/home/mp3poisk/xxx.ru/
есть файлы
pass.php и password.php и они как-то пересекаются ?
Great-Antique
На сайте с 21.08.2010
Offline
16
#18

Зачем городить столько всего?

---- файл 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>

Пишу небольшие PHP-скрипты бесплатно. Главное, чтобы интересно было. Блог о PHP-разработке (http://den.girnyk.com) и не только.
12

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий