Arhn - архитектура программирования

Многошаговая форма PHP с neo4j

Я делаю многоступенчатую форму для подачи информации о компании в PHP с базой данных графа neo4j. На первом этапе предоставляется основная информация, а на втором — дополнительная информация, которую пользователь должен заполнить.

Тогда проблема заключается в том, что когда я создаю узел компании на первом этапе формы, он создается успешно, но на следующем этапе я не могу получить идентификатор компании для хранения информации о шаге 2 этой компании. Форма шага 2 находится в другом файле.

Я использую метод отправки формы AJAX.

В основном мне нужно название компании или идентификатор, который создается на первом этапе, в форме второго шага для хранения информации о компании на шаге 2.

02.11.2014

Ответы:


1

Добавление некоторого кода может быть только полезным для нас.

Однако, если то, чего вы хотите достичь, близко к lastInsertId в PDO/Mysql, например, вы можете добиться этого и с помощью neo4j с оператором RETURN, который вернет вам созданный узел, и вы можете получить от него идентификатор, передать его ко второму шагу вашей формы и получить узел с переданным идентификатором.

Следующий код является примером использования клиента PHP от Neoxygen https://github.com/neoxygen/neo4j-neoclient. :

// Creating your company node
$q = 'CREATE (c:Company {name:"My Awesome Company"}) RETURN c';
$result = $client->sendCypherQuery($q);

$id = $result->getSingleNode()->getId();

Теперь передайте идентификатор на следующий шаг вашей формы и загрузите компанию из идентификатора:

$id = $_SERVER['POST']['id'];
$q = 'MATCH (c:Company) WHERE id(c) = {company_id} RETURN c';
$params = array('company_id' => $id);
$result = $client->sendCypherQuery($q, $params);

$company = $result->getSingleNode();
// Want to get some info of the node ?
$companyName = $company->getProperty('name');

Надеюсь, это помогло.

Крис

02.11.2014
Новые материалы

Коллекции публикаций по глубокому обучению
Последние пару месяцев я создавал коллекции последних академических публикаций по различным подполям глубокого обучения в моем блоге https://amundtveit.com - эта публикация дает обзор 25..

Представляем: Pepita
Фреймворк JavaScript с открытым исходным кодом Я знаю, что недостатка в фреймворках JavaScript нет. Но я просто не мог остановиться. Я хотел написать что-то сам, со своими собственными..

Советы по коду Laravel #2
1-) Найти // You can specify the columns you need // in when you use the find method on a model User::find(‘id’, [‘email’,’name’]); // You can increment or decrement // a field in..

Работа с временными рядами спутниковых изображений, часть 3 (аналитика данных)
Анализ временных рядов спутниковых изображений для данных наблюдений за большой Землей (arXiv) Автор: Рольф Симоэс , Жильберто Камара , Жильберто Кейрос , Фелипе Соуза , Педро Р. Андраде ,..

3 способа решить квадратное уравнение (3-й мой любимый) -
1. Методом факторизации — 2. Используя квадратичную формулу — 3. Заполнив квадрат — Давайте поймем это, решив это простое уравнение: Мы пытаемся сделать LHS,..

Создание VR-миров с A-Frame
Виртуальная реальность (и дополненная реальность) стали главными модными терминами в образовательных технологиях. С недорогими VR-гарнитурами, такими как Google Cardboard , и использованием..

Демистификация рекурсии
КОДЕКС Демистификация рекурсии Упрощенная концепция ошеломляющей О чем весь этот шум? Рекурсия, кажется, единственная тема, от которой у каждого начинающего студента-информатика..