Форум программистов, компьютерный форум, киберфорум
PHP: ООП
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.64/11: Рейтинг темы: голосов - 11, средняя оценка - 4.64
1 / 1 / 0
Регистрация: 19.10.2012
Сообщений: 51

не все данные записываются в файл

30.01.2013, 18:27. Показов 2062. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Вот есть главная страничка
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
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
<?php
header("Content-Type: text/html; cahrset=utf-8");
function __autoload($clName){
    include "$clName.class.php";
}
$gbook = new GbookDB();
$errMsg = "";
 
if($_SERVER["REQUEST_METHOD"]=="POST")
    include "savepost.inc.php";
 
if($_SERVER["REQUEST_METHOD"]=="GET")
    include "deletepost.inc.php";
 
?>
 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
 
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ru" lang="ru">
<head>
    <title>Гостевая книга</title>
</head>
<body>
 
<h1>Гостевая книга</h1>
<?php
if(!empty($errMsg))
    echo $errMsg;
?>
<form action="<?php echo $_SERVER['PHP_SELF']; ?>" method="post">
 
Ваше имя:<br />
<input type="text" name="name" /><br />
Ваш e-mail:<br />
<input type="text" name="email" /><br />
Сообщение:<br />
<textarea name="msg" cols="50" rows="5"></textarea><br />
<br />
<input type="submit" value="Добавить!" />
 
</form>
 
<?php
include "getall.inc.php";
 
?>
 
</body>
</html>
А вот класс, который подключается к главной странице
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
35
36
37
38
39
40
41
42
43
44
45
46
<?php
include "IGbookDB.class.php";
class GbookDB implements IGbookDB{
    const FNAME = "gbook.txt";
    protected $_file;
 
 
    function __construct(){
        if(!file_exists(self::FNAME)){
            $this->_file = fopen(self::FNAME, "x+");
            if($this->_file)
                return true;
            else
                echo "Файл не был создан";
        }
    }
 
    function clearData($data,$type="s"){
        switch ($type) {
            case 's':
                $data = stripslashes(trim(strip_tags($data)));
                break;
            case 'i':
                $data = (int)$data;
                break;
        }
    }
 
    function savePost($name, $eMail, $msg){
        $dt = date("d-m-Y H:m:s", time());
        $ip = $_SERVER['REMOTE_ADDR'];
        $fPut = file_put_contents(self::FNAME, "$name | $eMail | $msg | $dt | $ip",FILE_APPEND);
        if($fPut)
            return true;
        else
            echo "Не удалось записать данные!";      
    }
 
    function getAll(){}
 
    function deletePost($id){}
 
}
 
 
?>
Вот еще страница на которой обрабатываются данные из формы
PHP
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
<?php
 
if(
    isset($_POST['name']) && !empty($_POST['name']) &&
    isset($_POST['email']) && !empty($_POST['email']) &&
    isset($_POST['msg']) && !empty($_POST['msg'])
){
    $name = $gbook->clearData($_POST["name"],"s");
    $email = $gbook->clearData($_POST["email"],"s");
    $msg = $gbook->clearData($_POST["msg"],"s");
    $result = $gbook->savePost($name, $email, $msg);
    if(!$result)
        $errMsg = "Произошла ошибка при добавлении сообщения";
    else{
        header("Location: gbook.php");
        exit;
    }
}else{
    $errMsg = "Заполните все поля";
    
}?>
Вообщем проблема то в чем. В форму ввожу данные мыло,имя и текст, нужно чтобы в файл все сохранялось, создается файл посылаю в него данные и туда только айпи и дата записывается, а имя, мыло и текст из формы не приходят, ошибок никаких не вылетает, тупо в файле нет данных из формы.
Мучаюсь уже второй день не могу никак исправить. Заранее спасибо.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
30.01.2013, 18:27
Ответы с готовыми решениями:

Не записываются данные в базу данных mysql
Приветствую! При регистрации, ошибок нет, говорит что регистрация успешна, а данных в самой базе нет. Вот код, скажите, может в нём...

не записываются данные при отправке запроса почему
1.php &lt;!DOCTYPE html&gt; &lt;html lang=&quot;ru&quot;&gt; &lt;head&gt; &lt;title&gt;Заголовок&lt;/title&gt; &lt;/head&gt; &lt;body&gt; &lt;form name=&quot;myform&quot;...

Файл: Не могу понять, почему данные не записываются в файл, он остается пустым.
Здравствуйте , помогите пожалуйста , с записью данных в файл. #include &quot;stdafx.h&quot; #include&lt;iostream&gt; #include&lt;string&gt; ...

3
1 / 1 / 0
Регистрация: 19.10.2012
Сообщений: 51
31.01.2013, 22:42  [ТС]
проблема найдена, почему то изза stripslashes не проходят данные, я убрал просто stripslashes и все норм
PHP
1
2
3
4
5
6
7
8
9
10
function clearData($data,$type="s"){
        switch ($type) {
            case 's':
                $data = stripslashes(trim(strip_tags($data)));
                break;
            case 'i':
                $data = (int)$data;
                break;
        }
    }
Добавлено через 11 минут
Цитата Сообщение от Mixty Посмотреть сообщение
проблема найдена, почему то изза stripslashes не проходят данные, я убрал просто stripslashes и все норм
точнее я напрямую сделал
PHP
1
2
3
$name = trim(strip_tags($_POST["name"]));
    $email = trim(strip_tags($_POST["email"]));
    $msg = stripslashes(strip_tags($_POST["msg"]));
а вот так
PHP
1
2
3
$name = $gbook->clearData($_POST["name"],"s");
    $email = $gbook->clearData($_POST["email"],"s");
    $msg = $gbook->clearData($_POST["msg"],"t");
не работает , почему то когда через объект обращаюсь к методу, не работает. Почему подскажите плиз.
0
 Аватар для alpex
603 / 578 / 103
Регистрация: 16.07.2012
Сообщений: 1,762
01.02.2013, 05:21
у вас clearData не возвращает ничего, поэтому выражение
PHP
1
$name = $gbook->clearData($_POST["name"],"s");
равносильно
PHP
1
$name = NULL);
1
1 / 1 / 0
Регистрация: 19.10.2012
Сообщений: 51
01.02.2013, 12:06  [ТС]
спасибо, я не учел этого, все заработало.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
01.02.2013, 12:06
Помогаю со студенческими работами здесь

Записываются не все данные
Всем привет. Пишу класс, который подключается к БД и записывает в нее информацию. В моей таблице 3 поля: id, text, date. &lt;?php ...

Не записываются данные в файл
Не записываются переменная в файл вот код: void __fastcall TForm1::Button7Click(TObject *Sender) { ...

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

Данные не записываются в файл
Здравствуйте, уважаемые программисты! Не могли бы вы мне помочь? Данные не записываются в файл .txt. Скорее всего, это связано с тем,...

Данные не записываются в файл
Возникли следующая проблема. С помощью runfile происходит ввод данных и их запись в файл. Но непонятно почему в файл ничего не...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! */ #include <iostream> #include <stack> #include <cctype>. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru