Добавление данных формы к предыдущему сообщению - PullRequest
0 голосов
/ 08 декабря 2018

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

Вот что делает обработка формы:

// NOTE: this form does not make any database entries
if (isset($_POST)) :
    if (isset($_POST['insert'])) unset($_POST['insert']);
    $Values = array();
    foreach ($_POST as $value) :
        if (!is_numeric($value) && !Contains("$",$value) && $value !== "TRUE" && $value !== "FALSE") $value = "\"$value\"";
        $Values[] = trim($value);
    endforeach;
    $output = implode(",",$Values);
endif;

.,,затем на странице в настоящее время он просто использует echo $ output; , который, конечно, перезаписывается при каждой отправке формы.Вывод выглядит примерно так:

"Field Name","FieldName",4,0,0,TRUE,"this is a test",$sqlLookup,FALSE,$siteDB

Возможно, я подумал, что это можно сделать с помощью буфера, но я не уверен, как его реализовать, поскольку приведенный ниже код, очевидно, не имеет смысла даже для меня.

if (isset($_POST) && isset($output)) :
    //echo "$output<p>\n\n";
    ob_start();
    echo $output;
    $fieldvalues = ob_get_contents();
    ob_end_clean();
endif;

1 Ответ

0 голосов
/ 09 декабря 2018

Без использования Ajax, JavaScript или чего-либо другого, кроме PHP, я смог получить необходимые результаты с помощью сеансов, как было предложено.Теперь мне просто нужно найти способ очистить значения для следующего набора представлений, который не должен быть слишком сложным.

// BEGIN SESSION TO STORE OUTPUT
if (!isset($_SESSION['output']))  $_SESSION['output'] = array();

// RETRIEVE POST VALUES TO ARRAY
if (isset($_POST)) :
    if (isset($_POST['insert'])) unset($_POST['insert']);
    $Values = array();
    foreach ($_POST as $value) :
        if (!is_numeric($value) && !Contains("$",$value) && $value !== "TRUE" && $value !== "FALSE") $value = "\"$value\"";
        $Values[] = trim($value);
    endforeach;
    $output = implode(",",$Values);
endif;

// APPEND ARRAY WITH NEW POST    
if (isset($_POST) && isset($_SESSION['output'])) :
    array_push($_SESSION['output'],$output);
endif;

// FORMAT VALUES FOR DISPLAY        
if (isset($_SESSION['output'])) :
    echo "\n<p><h4>Field Values</h4>\n\n";
    foreach ($_SESSION['output'] as $value) echo "$value<br>\n";
endif;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...