Форум АНТИЧАТ

Форум АНТИЧАТ (https://forum.antichat.xyz/index.php)
-   PHP, PERL, MySQL, JavaScript (https://forum.antichat.xyz/forumdisplay.php?f=37)
-   -   5-тиминутный скрипт! Помогите Plz! [Keys] (https://forum.antichat.xyz/showthread.php?t=121912)

ClienTtm 23.05.2009 09:54

5-тиминутный скрипт! Помогите Plz! [Keys]
 
Здрастье всему Ачату! Вообщем не первый раз обращался к Ачату с написанием несложного php скрипта (в предыдущеи разы помогали :)).

// Вообщем мне нада за огромное спасибо следующий скрипт, напишите у кого есть лишняя минутка:
• Есть текстовый файл к примеру "bonus.keys" в нём 100 или более строк, каждая строка состоит из цифр.
• Нужна вот такая форма в которую вводятся толька цифры:
http://s46.radikal.ru/i113/0905/19/d793d47036b7.bmp
• В неё вводятся цифры (ключи) которые сохранены в файле "bonus.keys" если ключ верный он стерается с файла "bonus.keys" и перекидывает на указанную мной в скрипте ссылку, если же ключ не верный, то выдаётся:
http://s61.radikal.ru/i174/0905/20/295d4ed511d0.jpg


Буду очень благодарен тому кто напишет данный скрипт за большое спасибо! За раннее благодарю! :)

PaCo 23.05.2009 11:02

Насколько я понял:
PHP код:

<?php
$file_name
="bonus.keys";
$link="http://google.ru/";
$file_array=is_readable($file_name) ? file($file_name) : false;
if(!empty(
$_POST['number']) && count($file_array)>0){
  
$find=array_search(trim($_POST['number']),array_map('trim',$file_array));
  if(
$find!==false){
   unset(
$file_array[$find]);  
   
file_put_contents($file_name,$file_array);
   
header("Location: $link");
   exit;  
  }
  else 
   echo 
"<script> alert('НЕВЕРНЫЙ КЛЮЧИК'); </script>";
}
?>

<center>
 <form action=''  method="post">
    <p><input type="text" name="number" size="45"></p>
    <input type='submit' value='Ввод'>
 </form> 
<center>


ClienTtm 23.05.2009 13:29

Цитата:

Сообщение от PaCo
Насколько я понял:
PHP код:

<?php
$file_name
="bonus.keys";
$link="http://google.ru/";
$file_array=is_readable($file_name) ? file($file_name) : false;
if(!empty(
$_POST['number']) && count($file_array)>0){
  
$find=array_search(trim($_POST['number']),array_map('trim',$file_array));
  if(
$find!==false){
   unset(
$file_array[$find]);  
   
file_put_contents($file_name,$file_array);
   
header("Location: $link");
   exit;  
  }
  else 
   echo 
"<script> alert('НЕВЕРНЫЙ КЛЮЧИК'); </script>";
}
?>

<center>
 <form action=''  method="post">
    <p><input type="text" name="number" size="45"></p>
    <input type='submit' value='Ввод'>
 </form> 
<center>


Да чтото в этом роде! Толька тут почему то на ссылку не перекидывает! И не стирает введённые цифры (ключи) из файла bonus.keys хотя CMD 777 стоит! PaCo может доделаешь? Plz оченя нада!

D1mOn 23.05.2009 13:57

Ну а если
PHP код:

header("Location ".$link.""); 


_==wolf==_ 23.05.2009 14:01

нет, D1mOn после Location должна быть :

ClienTtm 23.05.2009 14:03

Цитата:

Сообщение от D1mOn
Ну а если
PHP код:

header("Location ".$link.""); 


Странно но тоже не перекидывает! Народ помогите! :confused:

D1mOn 23.05.2009 14:17

Упс опечатка забыл двоеточик)) _==wolf==_ пасиб)
PHP код:

header("Location: ".$link.""); 


ClienTtm 23.05.2009 14:23

Цитата:

Сообщение от D1mOn
Упс опечатка забыл двоеточик)) _==wolf==_ пасиб)
PHP код:

header("Location: ".$link.""); 


Неа таже лажа! Я уже всё перепробывал! Народ разберитесь кто нить! Этот скрипт не удаляет строки и не перекидывает на линку! :confused:

_==wolf==_ 23.05.2009 14:26

это РАБОТАЕТ точно -
PHP код:

header('Location: '.$link); 

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

Ch3ck 23.05.2009 17:00

Вот тебе для удаления строки... аж форму и хеадер локатион откопируешь выше.
PHP код:

<?php
  $string 
"строка которую надо удалить...";
  
$file file('bonus.keys'); 
  for (
$i=0;$i<count($file);$i++)
  { 
    if(
trim($file[$i])==$string) unset($file[$i]);
  }
  
$h fopen('bonus.keys',"w");
  
fwrite($himplode("",$file));
  
fclose($h
?>


PaCo 23.05.2009 20:16

2ClienTtm мой скрипт рассчитан на то что все числовые комбинации у тебя находятся в файле с новой строки:
12324
123123
123123
123123
покажи 2 вещи - какие данные у тебя находятся в твоем текстовом файле(хотя бы 3-4 значения из него как они есть) и то что ты вводишь в форму поиска, + версия пхп должна быть =<5 (file_put_contents), потому как у меня все прекрасно работает.

ClienTtm 24.05.2009 12:06

Цитата:

Сообщение от PaCo
2ClienTtm мой скрипт рассчитан на то что все числовые комбинации у тебя находятся в файле с новой строки:
12324
123123
123123
123123
покажи 2 вещи - какие данные у тебя находятся в твоем текстовом файле(хотя бы 3-4 значения из него как они есть) и то что ты вводишь в форму поиска, + версия пхп должна быть =<5 (file_put_contents), потому как у меня все прекрасно работает.

Цифры у меня находятся именно так как ты показал, в файле с новой строки:
12324
123123
123123
123123
Вот насчёт пхп незнаю! Вроде 5, вся сложность именно в следующих строках:
PHP код:

unset($file_array[$find]);
file_put_contents($file_name,$file_array); 

наверное платформа пхп меньше 5-ой версии. Можно как нибудь переделать на позднюю версию?

PaCo 24.05.2009 13:50

Вот, только что проверял все работает:
PHP код:

<?php
$file_name
="bonus.keys";
$link="http://google.ru/";
$file_array=is_writable($file_name)  ? file($file_name) : false;
if(
count($file_array)<|| $file_array===false) die ("Файла с ключиками нет(возможно он указан не верно) либо он пустой!!!!");
if(!empty(
$_POST['number'])){
  
$find=array_search(trim($_POST['number']),array_map('trim',$file_array));
  if(
$find!==false){
   unset(
$file_array[$find]);
   
$file_handle=fopen($file_name'wb');
   if (
fwrite($file_handleimplode(""array_unique($file_array))) === FALSE) {
        echo 
"Не могу произвести запись в файл ($file_name)";
        exit;
   }   
   
fclose($file_handle);
   if (!
headers_sent()) {
    
header("Location: $link");
    exit;
   }  
  }
  else 
   echo 
"<script> alert('НЕВЕРНЫЙ КЛЮЧИК'); </script>";
}
?>

<center>
 <form action=''  method="post">
    <p><input type="text" name="number" size="45"></p>
    <input type='submit' value='Ввод'>
 </form> 
<center>


ClienTtm 24.05.2009 14:09

Выражаю огромную благодарность всем помогавшим и в частности PaCo. Всё работает! Всё так как надо! Я знал что Ачат всегда поможет!


Время: 02:03