ajax — многоступенчатая форма PHP с neo4j

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

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

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

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

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');

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

Крис

2

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]