Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Скриптовые языки программирования > PHP
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 08.02.2014, 14:14   #1
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию Проверка на чтение с файла

PHP код:
<form name="qw0" id="qw0" method="post">
   <input type="text" name="q1" value=""> 
   <input type="submit">                         
</form> 
<?php
if(preg_match('/^\d+$/'$_POST['q1'])) 
  { echo 
"Yes";
    echo 
"<br>";
    
$dst_1 fopen('zap_1.txt''w');
    
fputs($dst_1$_POST['q1']); 
    
fclose($dst_1); }
  else 
  {echo 
"No"; echo "<br>"; }

if(
100 $_POST['q1'] )
   { 
$b fopen('b.txt''a');
     
fputs($b'Yes ');
          
$dst_1 fopen('zap_1.txt''w');
          
fputs($dst_11); }
   else { echo 
"Стоп"; }
?>
Я ввожу в поле ввода чиселки, если меньше '100', то "Стоп", если больше, то в b.txt записывается 'Yes '. Как сделать так, чтобы после обновления страницы 'Yes' не вводилось опять? Режим 'а' нельзя заменять на 'w'. (Это просто для примера). Я думал, если изменить введенное число в файле zap_1.txt на '1', то значение не будет больше 100.., но не сработало((
Как можно реализовать что-то подобное?
P.s.: прошу прощение за мой корявый язык
Parallelogram вне форума Ответить с цитированием
Старый 09.02.2014, 09:28   #2
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

Не, все, не нужна помощь. Свой велосипед я изобрел путем перезаписи и чтения из двух файлов. Решение не такое уж и элегантное, но зато работает)
Parallelogram вне форума Ответить с цитированием
Старый 09.02.2014, 11:23   #3
Михаил 1990
Пользователь
 
Регистрация: 09.02.2014
Сообщений: 20
По умолчанию

<?php
$h = date("H");

if($h >=6 && $h <12):
$img = 'morning';
elseif($h >=12 && $h <18):
$img = 'day';
elseif($h >=18 && $h <24):
$img = 'evening';
else:
$img = 'night';
?>
<!DOCTYPE HTML>
<html>
<head>
<title>ДАВНО НА ПАЛОЧКЕ</title>
<meta charset="cp1251"/>
</head>
<body style="width:100% ;
height:768 px ;
background: url(img/<?php echo date ,$img; ?>.jpg) ;
background-size: cover ;">
<p style="color:white ;"><?php echo date("H:i:s d/m/y") ?> </p>
</html>
у меня он выдаёт ошибку Parse error: syntax error, unexpected $end in Z:\home\torneo\www\index..php on line 24 помогите пожалуйста.Перепробовал кучу вариантов и всё время чем то не доволен

Последний раз редактировалось Михаил 1990; 09.02.2014 в 11:31.
Михаил 1990 вне форума Ответить с цитированием
Старый 09.02.2014, 12:15   #4
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

Блин, ничего подобного, все сломалось. Я прям бешусь, сил нет мучить голову. Не понимаю в чем проблема!!
PHP код:
<form name="qw1" id="qw1" method="post">
   <input type="text" name="q1" >
   <input type="submit" value="Задействовать">         
</form>
<form name="qw2" id="qw2" method="post">    
   <input type="submit" name="chb" value="Разрешить">
</form>

<?php
if (isset($_POST['chb']))                      // Если нажать на кнопочку "Разрешить"
{$b fopen('b.txt''w');                     // в файл b.txt запишется "1"
 
fputs($b1);
 
fclose($b);}
$filename 'b.txt';
$filesize filesize($filename);               // Чтобы узнать размер файла

if(preg_match('/^\d+$/'$_POST['q1']))        // Если ввели число, то записываем его в "zap_1.txt"
  
$dst_1 fopen('zap_1.txt''w');
    
fputs($dst_1$_POST['q1']); 
    
fclose($dst_1); }
  else 
  {    echo 
"No";
    echo 
"<br>"; }

if(
800 $_POST['q1'] )                        // При вводе числа меньше, чем 800, выполняется условие
   
{ if($filesize 3)                         // Если файл весит меньше 3 байт, происходит запись "z"
      
{echo '!!'$tst fopen('ex.txt''a'); // в ex.txt для того чтобы видеть когда условие срабатывает
      
fputs($tstz); 
      
fclose($tst);                             
      
$b fopen('b.txt''w');                // В файл b.txt записывается "222", чтобы можно
      
fputs($b222);                          // было потом разрешить или запретить условие
      
fclose($b);}
    else {echo 
"Неразрешено";}}
else {echo 
"xaxaxaxaxax";}
// Вроде все пометил для удобства
?>
Вкратце, при вводе в поле числа, оно записывается в файл zap_1.txt. Если это число меньше "800", то выполняется условие. Если в файле b.txt записаны три числа "222", то выводится "Неразрешено". если же в файле b.txt записана буква "z", то выводится "!!" и в файл ex.txt дописывается "1", а в файл b.txt заносится "222". Все это для того, чтобы после обновления страницы, скрипт видел "222" и не разрешал выполнять условие. Но после нажатия на кнопку "Разрешить" в файл b.txt записывается "1" и условие готово к выполнению.
Так вот, этот скрипт не работает. Даже если в файле b.txt записано "222", скрипт выполняется и выводится "!!"
Пожалуйста, помогите мне. Я конечно понимаю велосипед еще тот и текста много, но я уже не могу(
Parallelogram вне форума Ответить с цитированием
Старый 09.02.2014, 12:20   #5
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Михаил 1990
endif; в конце всех условий забыл.
url(img/<?php echo date ,$img; ?>.jpg) ; – здесь бред, что за date?

В целом да – именно оно "на палочке".
Andkorol вне форума Ответить с цитированием
Старый 09.02.2014, 12:21   #6
ADSoft
Старожил
 
Регистрация: 25.02.2007
Сообщений: 4,160
По умолчанию

какая-то полная чушь не имеющая практического значения. Сферический конь в вакууме.... есть какое-то практическое применение? Может как нормальные люди использовать БД?
ADSoft вне форума Ответить с цитированием
Старый 09.02.2014, 12:25   #7
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

Цитата:
Сообщение от ADSoft Посмотреть сообщение
какая-то полная чушь не имеющая практического значения. Сферический конь в вакууме.... есть какое-то практическое применение? Может как нормальные люди использовать БД?
Блин, так каждый может ответить, а я на помощь надеюсь(
Если вникнуть, то все понятно и просто, но работает не корректно
Parallelogram вне форума Ответить с цитированием
Старый 09.02.2014, 12:34   #8
Михаил 1990
Пользователь
 
Регистрация: 09.02.2014
Сообщений: 20
По умолчанию

Цитата:
Сообщение от Andkorol Посмотреть сообщение
Михаил 1990
endif; в конце всех условий забыл.
url(img/<?php echo date ,$img; ?>.jpg) ; – здесь бред, что за date?

В целом да – именно оно "на палочке".
Я знаю что это оно на палочке но я только учусь
Михаил 1990 вне форума Ответить с цитированием
Старый 09.02.2014, 13:03   #9
Andkorol
Старожил
 
Регистрация: 31.05.2010
Сообщений: 3,301
По умолчанию

Цитата:
Сообщение от Михаил 1990 Посмотреть сообщение
Я знаю что это оно на палочке но я только учусь
Михаил 1990
Тогда научись, для начала, создавать свои собственные темы на форуме – а не влезать в чужие.

Parallelogram
Добавь условие, которое проверяет наличие переменной $_POST[q1']:
PHP код:
<?php 
if (isset($_POST['chb']))
{
    
$b fopen('b.txt''w');
    
fputs($b1); 
    
fclose($b);


if(isset(
$_POST['q1'])){   // <– здесь
    
$filesize filesize('b.txt');  

    if(
preg_match('/^\d+$/'$_POST['q1']))
    { 
        
$dst_1 fopen('zap_1.txt''w'); 
        
fputs($dst_1$_POST['q1']);  
        
fclose($dst_1); 
    } 
    else  
    {    
        echo 
"No<br>";
    } 

    if(
800 $_POST['q1'] )
    { 
        if(
$filesize 3)
        {
            echo 
'!!'
            
$tst fopen('ex.txt''a'); 
            
fputs($tst'z');  
            
fclose($tst);                              
            
$b fopen('b.txt''w');
            
fputs($b222);
            
fclose($b);
        } 
        else 
        {
            echo 
"Неразрешено";
        }
    } 
    else 
    {
        echo 
"xaxaxaxaxax";
    } 

?>
Andkorol вне форума Ответить с цитированием
Старый 09.02.2014, 14:44   #10
Parallelogram
Недотепа
Форумчанин
 
Регистрация: 18.01.2011
Сообщений: 174
По умолчанию

Как правильно пользоваться функцией readfile() ?
Делаю так: echo readfile('zap_0.txt')
Он выводит не просто число, а еще и количество символов в файле. Например не 1000, а 10004.
Какой-то параметр нужно поставить?
Parallelogram вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Чтение из файла Стремящийся Общие вопросы по Java, Java SE, Kotlin 2 10.06.2012 10:56
Проверка архивов rar, zip, arj, 7z на наличие файла используя cmd-файла cerberochek Win Api 5 05.10.2011 19:26
Чтение из файла (Си) VadEr Помощь студентам 3 02.09.2010 21:06
Чтение из файла (С) spirit_trapper Помощь студентам 4 26.05.2010 19:37
Чтение из файла utrnjhyfgjktjy Помощь студентам 9 30.01.2010 17:41