0 Пользователей и 1 Гость просматривают эту тему.
  • 12 Ответов
  • 1529 Просмотров
*

Aztwin

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
RSForm и MySQL
« : 16.05.2016, 09:27:00 »
Всем добра форумчане! Прошу помощи в решении проблемы со скриптом или настройкой RSForm для отправки данных формы в нужную мне таблицу в базе. Написал PHP скрипт

Код
<?php

// обработка полученных данных
$id = $_POST['id'];
$matchday_id = $_POST['matchday_id'];
$nember = $_POST['nember'];
$dete = $_POST['dete'];
$team1_id = $_POST['team1_id'];
$team2_id = $_POST['team2_id'];
$score1 = $_POST['score1'] ? $_POST['score1'] : 'null';
$score2 = $_POST['score2'] ? $_POST['score2'] : 'null';
$stadium_id = $_POST['stadium_id'] ? $_POST['stadium_id'] : 'null';
$viewers = $_POST['viewers'] ? $_POST['viewers'] : 'null';

// подключение к базе данных
require_once 'link.php';

// запрос
$result = mysqli_query($link, " INSERT INTO matches VALUES ('$id', '$matchday_id', $nember, '$dete', $team1_id, $team2_id, $score1, $score2, $stadium_id, $viewers) ");

// закрытие соединения
mysqli_close();

?>

 который собирает данные $_POST и делает INSERT в базу. Если открыть сам скрипт файл напрямую имя_сайта/insert_match.php то всё нормально работает. Но если подгрузить скрипт в форму или скопировать во второе поле ---$_POST form data can be modified here, before it is added to the database---  то ничего не работает. Что я не так делаю?
*

robert

  • Живу я здесь
  • 4974
  • 457 / 20
Re: RSForm и MySQL
« Ответ #1 : 16.05.2016, 10:26:04 »
Код
<?php
// обработка полученных данных
$id = $_POST['id'];
---
$result = mysqli_query($link, " INSERT INTO matches VALUES ('$id', '$matchday_id', $nember, '$dete', $team1_id, $team2_id, $score1, $score2, $stadium_id, $viewers) ");
?>
Ооо, SQL-инъекция передает вам привет! А не работает, по-видимому, из-за неправильного указания пути, как я вам уже ответил в дрйгой теме.
Не будь паразитом, сделай что-нибудь самостоятельно!
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: RSForm и MySQL
« Ответ #2 : 16.05.2016, 10:29:24 »
Там же теперь отдельный функционал для добавления в базу. даже кода не надо.
Что же касается вашего кода, то можно сделать на api Joomla
Код
$item = new stdClass(); 
$item->id = $_POST['id']; // WHY NOT AUTO ?
$item->matchday_id = $_POST['matchday_id'];
$item->nember = $_POST['nember'];
$item->dete = $_POST['dete']; // WHY NOT AUTO ?
$item->team1_id = $_POST['team1_id'];
$item->team2_id = $_POST['team2_id'];
$item->core1 = $_POST['score1'] ? $_POST['score1'] : 'null'; // ?
$item->score2 = $_POST['score2'] ? $_POST['score2'] : 'null'; // ?
$item->stadium_id = $_POST['stadium_id'] ? $_POST['stadium_id'] : 'null'; //  ?
$item->viewers = $_POST['viewers'] ? $_POST['viewers'] : 'null'; // ?
$item_action = JFactory::getDbo()->insertObject('#__table_name', $item);

P.S на будущее пишиите задачу целиком. А если говорим о базе то не плохо бы глянуть на ее структуру. А то малолу вы в int text записать пытаетесь
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Aztwin

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Re: RSForm и MySQL
« Ответ #3 : 16.05.2016, 10:33:12 »
Там же теперь отдельный функционал для добавления в базу. даже кода не надо.
Что же касается вашего кода, то можно сделать на api Joomla

P.S на будущее пишиите задачу целиком. А если говорим о базе то не плохо бы глянуть на ее структуру. А то малолу вы в int text записать пытаетесь

А можете по подробнее расписать что и как сделать? Млин уже который день бьюсь... Плиз... и какие данные нужны?
*

Aztwin

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Re: RSForm и MySQL
« Ответ #4 : 16.05.2016, 10:35:55 »
Ооо, SQL-инъекция передает вам привет! А не работает, по-видимому, из-за неправильного указания пути, как я вам уже ответил в дрйгой теме.
Я пока еще о безопасности не думал. Мне бы для начала в базу залить данные из формы...
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: RSForm и MySQL
« Ответ #5 : 16.05.2016, 10:41:32 »
А можете по подробнее расписать что и как сделать? Млин уже который день бьюсь... Плиз... и какие данные нужны?
Ну если просите помочь с базой всегда не плохо бы показывать структуру самой таблицы. А то всякое бывает. Помню как-то раз бился почти целый день над ошибкой, а оказалось что я parent написал paarent.
По существу вашего вопроса. На сайте RSJoomla есть куча роликов и документации. Если не помогает. То у них очень отзывчивый саппорт. Сегодня понедельник по UTC+2:00 сейчас 9:35, так что кат-раз.  
Ну а если у вас стоит варез. будьте любезны страдать сами. ИМХО
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
Re: RSForm и MySQL
« Ответ #6 : 16.05.2016, 10:44:31 »
...то можно сделать на api Joomla

Какое-то у вас однобокое использование API Joomla.

Почему у вас используется голый $_POST ?
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: RSForm и MySQL
« Ответ #7 : 16.05.2016, 10:47:20 »
Какое-то у вас однобокое использование API Joomla.

Почему у вас используется голый $_POST ?
Да лень было. я просто копирнул что под рукой было и посавил его значения. могу конечно переписать через JRequest::getVar();
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

SDKiller

  • Живу я здесь
  • 2706
  • 329 / 5
  • ...ergo sum
Re: RSForm и MySQL
« Ответ #8 : 16.05.2016, 10:55:04 »
...могу конечно переписать через JRequest::getVar();

Если уж поучать новичка, да ещё в таком тоне, то хотя бы делать это правильно, тем более что вопрос безопасности уже был поднят несколькими постами ранее.

И, кстати, JRequest уже давно объявлен deprecated, так что если уж переписывать, то используя актуальный код.
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: RSForm и MySQL
« Ответ #9 : 16.05.2016, 11:13:39 »
Если уж поучать новичка, да ещё в таком тоне, то хотя бы делать это правильно, тем более что вопрос безопасности уже был поднят несколькими постами ранее.
А в каком тоне?. Вопрос безопасности. К отправлению человека читать документацию, отношения не имеет. Ибо в документации он найдет как сделать то что ему нужно, не написав ни сточки кода.
Код
И, кстати, JRequest уже давно объявлен deprecated, так что если уж переписывать, то используя актуальный код.
да флейм идет года c 2014. Вот только его как использовали так и используют. да и Jinput тоже со своими прибамбасами.
Так что новичку это знать абсолютно без надобности. хотя какой он новичок если уже дошел до того что ему нужна работа со своей базой.
« Последнее редактирование: 16.05.2016, 11:37:17 от Septdir »
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Aztwin

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Re: RSForm и MySQL
« Ответ #10 : 16.05.2016, 12:08:09 »
Ну если просите помочь с базой всегда не плохо бы показывать структуру самой таблицы. А то всякое бывает. Помню как-то раз бился почти целый день над ошибкой, а оказалось что я parent написал paarent.
По существу вашего вопроса. На сайте RSJoomla есть куча роликов и документации. Если не помогает. То у них очень отзывчивый саппорт. Сегодня понедельник по UTC+2:00 сейчас 9:35, так что кат-раз.  
Ну а если у вас стоит варез. будьте любезны страдать сами. ИМХО

Поставил RSForm только из за того, что не смог найти решения своей проблемы. Наткнулся в инэте на статью, что в в компоненте RSForm можно указать своей php скрипт, вот и подумал что это может быть решением моей проблемы. Ведь сам скрипт удачно отрабатывал задачу и вносил данные в таблицу. Про структуры таблицы в которую нужно вносить данные (matches) или матчи. Вот структура таблицы:
Код
-- таблица матчи
CREATE TABLE `matches` (
`id` CHAR(15) NOT NULL PRIMARY KEY COMMENT 'код матча', -- пример TLC-2016-01-001 вносится вручную
`matchday_id` CHAR(11) NOT NULL COMMENT 'код турнира', -- пример TLC-2016-08 ссылка на таблицу туры
`nember` SMALLINT UNSIGNED NOT NULL COMMENT 'номер матча', -- пример 001
`dete` DATE COMMENT 'дата матча', -- пример 2016-05-01
`team1_id` TINYINT UNSIGNED COMMENT 'код команды 1', -- пример 1 ссылка на таблицу команды
`team2_id` TINYINT UNSIGNED COMMENT 'код команды 2', -- пример 2 ссылка на таблицу команды
`score1` TINYINT UNSIGNED COMMENT 'очки 1', -- пример 0
`score2` TINYINT UNSIGNED COMMENT 'очки 2', -- пример 0
`stadium_id` TINYINT UNSIGNED COMMENT 'код стадиона', -- пример 1 ссылка на таблицу стадионы
`viewers` SMALLINT UNSIGNED COMMENT 'зрители', -- пример 50000
UNIQUE (matchday_id, nember),
UNIQUE (team1_id, dete, team2_id),
FOREIGN KEY (matchday_id) REFERENCES matchdays (id) ON DELETE CASCADE,
FOREIGN KEY (team1_id) REFERENCES teams1 (id) ON DELETE CASCADE,
FOREIGN KEY (team2_id) REFERENCES teams2 (id) ON DELETE CASCADE,
FOREIGN KEY (stadium_id) REFERENCES stadiums (id) ON DELETE CASCADE
) COMMENT 'таблица матчи';
DESC matches;
*

Septdir

  • Живу я здесь
  • 3370
  • 168 / 4
Re: RSForm и MySQL
« Ответ #11 : 16.05.2016, 12:12:27 »
Наткнулся в инэте на статью, что в в компоненте RSForm можно указать своей php скрипт, вот и подумал что это может быть
Статья старая.
Если лень искать самому.
Текст:
https://www.rsjoomla.com/support/documentation/rsform-pro/customizing-rsform-pro/mapping-submission-info-to-other-database-tables.html
Видео:
https://www.rsjoomla.com/video-tutorials/rsformpro/ep-67-how-to-transform-an-rsformpro-submission-into-a-joomla-article.html
Саппорт :
https://www.rsjoomla.com/support.html
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
CodersRank | Контакты | Мой GitHub | Workshop
*

Aztwin

  • Осваиваюсь на форуме
  • 14
  • 0 / 0
Re: RSForm и MySQL
« Ответ #12 : 16.05.2016, 12:16:54 »
Статья старая. Если лень искать самому.
Нее, я про решение в самой Joomla без сторонних расширений. Чтобы можно было в самой статье сделать форму с отправкой данных в базу...
Чтобы оставить сообщение,
Вам необходимо Войти или Зарегистрироваться
 

Заявки падают всегда в спам при оформлении заявки через RSForm

Автор stitch808

Ответов: 7
Просмотров: 460
Последний ответ 31.01.2024, 16:51:58
от stitch808
Калькулятор на RSForm. Вопрос по JS

Автор ukrart

Ответов: 3
Просмотров: 1292
Последний ответ 18.08.2022, 11:48:44
от sivers
Правила валидации полей RSForm Pro

Автор Anvari6120

Ответов: 0
Просмотров: 1219
Последний ответ 26.07.2022, 19:02:44
от Anvari6120
Прикрипление файлов в форме RSForm

Автор stitch808

Ответов: 0
Просмотров: 1295
Последний ответ 28.03.2022, 17:34:40
от stitch808
RSForm макеты отображаются без отступов по всей ширине экрана

Автор pechenye

Ответов: 0
Просмотров: 1333
Последний ответ 08.02.2022, 18:39:35
от pechenye