Форум программистов, компьютерный форум, киберфорум
PHP для начинающих
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.71/7: Рейтинг темы: голосов - 7, средняя оценка - 4.71
0 / 0 / 0
Регистрация: 18.03.2012
Сообщений: 36
1

Чтение и запись в файл

31.10.2012, 22:12. Показов 1364. Ответов 18
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
маленькая программка, которая записывает в файлик комментарии пользователей и выводит на экран
почему то при обновлении страницы последний коммент выскакивает еще раз

почему?

сорри за то, что скрин, но так получилось)
Миниатюры
Чтение и запись в файл  
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
31.10.2012, 22:12
Ответы с готовыми решениями:

Чтение файла, чтение названия папки где находится файл, запись данных на PHP
Допустим у нас есть структура с папками типа Large -> Vehicles -> Firetruck_0 В этой папке лежит...

Открыть текстовый файл в необходимом режиме (на чтение, на чтение и запись, на добавление)
Открыть текстовый файл в необходимом режиме (на чтение, на чтение и запись, на добавление). (В...

Ввод с клавиатуры и запись в файл, чтение из файла и запись в массив, вывод из массива на экран
1.Ввод с клавиатуры и запись в файл, чтение из файла и запись в массив, вывод из массива на экран...

Запись в файл, чтение из файла, сохранени в файл, не работают эти функции
Здравствуйте. Не работает методы: Save() — сохранение фигуры (объекта) в файл, Load() —...

18
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
31.10.2012, 22:21 2
сорри за скрин, но так получилось
Чтение и запись в файл


З.Ы. на практически любом хостинге Ваш код работать не будет
0
601 / 569 / 104
Регистрация: 07.11.2010
Сообщений: 2,004
31.10.2012, 22:59 3
Цитата Сообщение от Маша Голубева Посмотреть сообщение
почему то при обновлении страницы последний коммент выскакивает еще раз
данные из POST никто не очищает, они и будут добавляться
0
0 / 0 / 0
Регистрация: 18.03.2012
Сообщений: 36
31.10.2012, 23:16  [ТС] 4
ну и вредные же вы, а я все исправила...
0
Почетный модератор
Эксперт HTML/CSSЭксперт PHP
16844 / 6723 / 880
Регистрация: 12.06.2012
Сообщений: 19,967
31.10.2012, 23:38 5
Цитата Сообщение от Маша Голубева Посмотреть сообщение
а я все исправила...
а теперь в самом начале скрипта добавляем вот такой скрипт
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
<?php
// Emulate register_globals off
function unregister_GLOBALS()
{
    if (!ini_get('register_globals')) {
        return;
    }
 
    // Might want to change this perhaps to a nicer error
    if (isset($_REQUEST['GLOBALS']) || isset($_FILES['GLOBALS'])) {
        die('GLOBALS overwrite attempt detected');
    }
 
    // Variables that shouldn't be unset
    $noUnset = array('GLOBALS',  '_GET',
                     '_POST',    '_COOKIE',
                     '_REQUEST', '_SERVER',
                     '_ENV',     '_FILES');
 
    $input = array_merge($_GET,    $_POST,
                         $_COOKIE, $_SERVER,
                         $_ENV,    $_FILES,
                         isset($_SESSION) && is_array($_SESSION) ? $_SESSION : array());
 
    foreach ($input as $k => $v) {
        if (!in_array($k, $noUnset) && isset($GLOBALS[$k])) {
            unset($GLOBALS[$k]);
        }
    }
}
 
unregister_GLOBALS();
 
?>
0
0 / 0 / 0
Регистрация: 18.03.2012
Сообщений: 36
08.11.2012, 11:29  [ТС] 6
а что здесь происходит, я не добавляла и у меня работает программа..
0
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
08.11.2012, 11:32 7
это про вот это
0
0 / 0 / 0
Регистрация: 18.03.2012
Сообщений: 36
08.11.2012, 11:35  [ТС] 8
ну я просто включила ее в php.ini..

Добавлено через 47 секунд
это конечно не очень правильно, но для моей программы из трех строк в самый раз)
0
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
08.11.2012, 11:36 9
Цитата Сообщение от Маша Голубева Посмотреть сообщение
ну я просто включила ее в php.ini..
так делать не стоит это очень плохая практика, плюс ни на одном хостинге это работать не будет

Добавлено через 1 минуту
нужно самому переприсваивать эти переменные сразу чистя их от разных хакеров
0
KOPOJI
08.11.2012, 11:38
  #10

Не по теме:

Цитата Сообщение от alpex Посмотреть сообщение
плюс ни на одном хостинге это работать не будет
почему же не на одном? Они еще есть, вот например sweb.ru

0
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
08.11.2012, 11:39 11
вот что получится например если вам кто то пошлет такое сообщение
HTML5
1
<script>while(1)alert('и сюда чего нибудь напишет')</script>
Добавлено через 31 секунду
Цитата Сообщение от KOPOJI Посмотреть сообщение

Не по теме:


почему же не на одном? Они еще есть, вот например sweb.ru

лучше бы их не было
0
0 / 0 / 0
Регистрация: 18.03.2012
Сообщений: 36
08.11.2012, 11:43  [ТС] 12
я , подозревала, что хакерам до моей программы есть дело

ну ладно, так получается что эта функция выполняется каждый раз
и ничего не возвращает?!

Добавлено через 2 минуты
и если я планирую использовать в программе только гет и пост то могу написать так?

PHP
1
2
3
4
 $noUnset = array('GLOBALS',  '_GET',
                     '_POST');
 
    $input = array_merge($_GET,    $_POST);
0
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
08.11.2012, 11:47 13
ну она делает тоже самое что и вы включили в php.ini только с выключенными register_globals, но мне кажется что лучше это делать самому руками
как то так для вашей программы
PHP
1
$t = strip_tags(trim($_POST['t']));
и уже скрипты отправленные в сообщениях работать не будут

Добавлено через 2 минуты
Цитата Сообщение от Маша Голубева Посмотреть сообщение
$input = array_merge($_GET, $_POST);
то что вы делаете здесь находится в массиве $_REQUEST правда в нем еще и куки тоже есть
0
0 / 0 / 0
Регистрация: 18.03.2012
Сообщений: 36
08.11.2012, 11:48  [ТС] 14
назначение этого кода понятно)


я просто в начале кода писала
PHP
1
$txt = $_POST['text'];
и с выключенным регистер глобалс работало
0
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
08.11.2012, 11:51 15
ну все правильно вы и делали, просто если у вас включены register_globals через командную строку можно передать любую переменную
а это очень плохо(
0
0 / 0 / 0
Регистрация: 18.03.2012
Сообщений: 36
08.11.2012, 11:56  [ТС] 16
ладно, отключу, я просто делала на одном компьютере, с включенным,
потом когда обнаружила, что на другом не работает, написала эти посты в начале,
и все хорошо

а на компьютере своем просто из головы вылетело, что отключить надо)
0
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
08.11.2012, 11:58 17
нужно отключить а то когда на хостинг поставите сломают ваш сайт и наделают там глупостей всяких)
0
0 / 0 / 0
Регистрация: 18.03.2012
Сообщений: 36
08.11.2012, 12:00  [ТС] 18
thankyou
0
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
08.11.2012, 12:03 19
0
08.11.2012, 12:03
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
08.11.2012, 12:03
Помогаю со студенческими работами здесь

Открытие и чтение файла, запись в файл, помещение результата в файл
Eсть алгоритм решения задачи. Не знаю только каким способом открыть файлы и как в них что-либо...

Запись и чтение в файл
Вариант 1 Написать программу, которая считывает из текстового файла три предложения и выводит их в...

Чтение и запись в файл
Здраствуйте, я в c++ оч плохо разбираюсь, помогите пожалуйсто, мне нужен скрипт который открывал бы...

Чтение и запись в файл
Не удается считать содержимое строки str в файл output.txt в файл. Подскажите, пожалуйста, где...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
19
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru