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

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

  • Живу я здесь
  • 4610
  • 429 / 16
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

  • Живу я здесь
  • 2909
  • 146 / 3
  • JoomlaZen
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 записать пытаетесь
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
Мои Контакты | Мой GitHub | JoomlaZen
*

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

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

SDKiller

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

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

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

Septdir

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

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

SDKiller

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

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

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

Septdir

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

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

  • Живу я здесь
  • 2909
  • 146 / 3
  • JoomlaZen
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
Не можете справиться с задачей сами пишите, решу ее за вас, не бесплатно*.
*Интересная задача, Деньги или Бартер. Натурой не беру!
Мои Контакты | Мой GitHub | JoomlaZen
*

Aztwin

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

Передать ссылку емейлом в форме (RSForm, или другой компонент)

Автор mur4alka

Ответов: 0
Просмотров: 14
Последний ответ 11.12.2018, 22:30:40
от mur4alka
engage BOX + RSForm

Автор ROMERO

Ответов: 10
Просмотров: 243
Последний ответ 09.12.2018, 19:05:02
от ROMERO
Передача значения переменной из php в поле формы RSForm! Pro

Автор Victor77

Ответов: 3
Просмотров: 99
Последний ответ 29.11.2018, 13:37:36
от Septdir
RSForm и reCAPTCHA v2

Автор den_master

Ответов: 3
Просмотров: 2998
Последний ответ 26.11.2018, 10:05:57
от rsn
Не подгружаются стили формы RSForm! Pro.

Автор Grione

Ответов: 0
Просмотров: 60
Последний ответ 18.11.2018, 17:28:43
от Grione