2013-12-03 4 views
0

Недавно я начал с PHP, и есть кое-что, что я пытаюсь выяснить. Это то, что я хочу:Php простой ввод в массив

Поле ввода + Отправить. Когда u отправляет форму, значение поля ввода поступает в массив. давайте скажем $ array = array(); Каждый раз, когда вы отправляете значение, оно помещается в этот массив.

Я сделал вещи с $ _GET и $ _POST и другими вещами, как $ _SESSION, но я просто не могу получить эту работу ..

Помощь будет оценена! благодаря!

EDIT: информация (список) будет отображаться на странице. Не отправлять в базу данных mysql или что-то еще. Когда u обновит страницу, она исчезнет.

+1

а? 11 символов, которые нужно отправить – MonkeyZeus

+0

Вы можете либо сохранить его в базе данных mysql, либо сериализовать и сохранить в файловой системе. В зависимости от того, как вы собираетесь использовать данные позже и многое другое ... – phpisuber01

+0

Вы можете использовать php-сессию ... или js-файл cookie .... или браузер LocalStorage ... даже текстовый файл;) – Hackerman

ответ

1

Похоже, вы хотите сохранить данные, которые были отправлены.

index.php

<?php 

session_start(); 

if(isset($_POST['a_value'])) 
{ 
    if(!isset($_SESSION['a_value']) || !is_array($_SESSION['a_value'])) 
    { 
     $_SESSION['a_value'] = array(); 
    } 

    array_push($_SESSION['a_value'], $_POST['a_value']); 
} 

?> 

<form action="index.php" method="POST"> 
    <input type="text" name="a_value"> 
    <input type="submit" value="Go"> 
</form> 

<?php 

if(isset($_SESSION['a_value'])) 
{ 
    echo '<br><br>Values so far:<br><pre>'.print_r($_SESSION['a_value'], true).'</pre>'; 
} 

?> 
+0

Это почти идеально! теперь единственное, что я могу сделать, это отправить, отправить 1, отправить 2 и т. д. не только последний – user2894386

+0

. Я снова прочитал ваш вопрос, см. edit. – MonkeyZeus

+0

Это дает мне смертельную ошибку из-за [] на линии 12! "[] оператор не поддерживается для строк" – user2894386

0

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

<form method="post" name="frm" action="#"> 
      <input type="text" name="txt" id="txt" /> 
     <input type="submit" name="btn" value="submit"> 
    </form> 

<?php 
session_start(); 
    if (isset($_POST['btn'])) { 
     $_SESSION['counter'] += 1; 
     $_SESSION['val'][$_SESSION['counter']] = $_POST['txt']; 
     var_dump($_SESSION);  
    } 
?> 
Смежные вопросы