[PHP] Вставить элементы TextArea в массив и распечатать его

0

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

Дополнительное объяснение: есть список, который загружает строки из текстового файла
Затем у меня есть текстовая область, в которой пользователь вводит текст (строку)
При нажатии кнопки я хочу, чтобы приложение объединило каждый элемент в поле списка с каждым элементом в текстовой области, например:

[LISTBOX]
ITALY
USA
GERMANY

[TEXTAREA]
GREAT
GOOD
VERY GOOD

[PRINTED RESULT ON BUTTON PRESS]
ITALY GREAT
ITALY GOOD
ITALY VERY GOOD
USA GREAT
USA GOOD
USA VERY GOOD
GERMANY GREAT
GERMANY GOOD
GERMANY VERY GOOD

Мой код http://sharetext.org/RaB3

<html>
<head><title>TOOL</title></head>
<body>
<div align="center">
<img src="../img/logo.png" width="30%" height="16%">
</div>
<br><br>
<table>
<tr>
<td>
<?php
$file_handle = fopen("myfile.txt", "rb");
$i=0;
while (!feof($file_handle) ) {
$line_of_text = fgets($file_handle);
$parts = explode(';', $line_of_text);
$citta[$i]=array($parts[0]);
$i=$i+1;
}
fclose($file_handle);
?>
<div name="lista" align="left">
<select name="listacitta" multiple="multiple">')
<?for ($cit = 0; $cit <= $i-2; ++$cit)
{
        echo('<option>' . $citta[$cit][0] .'</option>');
    } ?>
</select>
</div></td>    
<td>
<textarea name="keywords" width="500" height="400" rows="10" cols="40"></textarea>
<?
for ($eco = 0; $eco <= $i-2; ++$eco)
{
//echo('ciao ' . $citta[$eco][0] . '<br>');
}
?>
</td>
</body>
</html>
  • 0
    Затем вам нужно использовать ajax, чтобы результат отображался на той же странице, или когда пользователь нажимает кнопку, он отображает пустую страницу с результатами, также вам не нужно отображать список в этом представлении, вы можете обработать его напрямую
  • 0
    О, большое спасибо Дэмиен Джо, вы исправили мой пост и мой плохой английский тоже, ВАУ! Спасибо :))
Показать ещё 1 комментарий
Теги:
listbox

1 ответ

0

Надеюсь, у меня вопрос правильно, и я думаю, что это то, что вам нужно:

<html>
<head>
    <title>TOOL</title>
</head>
<body>
    <div align="center">
        <img src="../img/logo.png" width="30%" height="16%">
    </div>
    <br><br>
    <form action="#" method="post">
    <table> 
        <tr>
            <td> 
                <?php 
                $file_handle = fopen("myfile.txt", "rb"); 
                while (!feof($file_handle) ) { 
                    $line_of_text = fgets($file_handle); 
                    $parts = explode(';', $line_of_text); 
                } 
                fclose($file_handle); 
                ?> 
                <div name="lista" align="left"> 
                    <select name="listacitta[]" multiple="multiple">
                        <?php 
                        for($cit = 0; $cit<count($parts); $cit++) { 
                          echo('<option value="' . $parts[$cit] . '">' . $parts[$cit] .'</option>'); 
                        };
                        ?> 
                    </select> 
                </div>
            </td> 
            <td> 

            <textarea name="keywords" width="500" height="400" rows="10" cols="40"></textarea>
            </td>
        </tr>
    </table>
    <input name="submit" type="submit" value="Submit">
    </form>
<?php
    if(isset($_POST['submit']) && !empty($_POST['keywords']) && !empty($_POST['listacitta'])) {
        $usertext = $_POST['keywords'];
        $userSelect = $_POST['listacitta'];
        $userTparts = explode(';', $usertext);
        for($z=0;$z<count($userSelect);$z++) {
            for($y=0;$y<count($userTparts);$y++){
                echo $userSelect[$z] . " " . $userTparts[$y] . "<br />";
            };
        };
    };  
?>
</body> 
</html>

Я не нашел необходимости в многомерном массиве $citta поэтому я понял это.

Обратите внимание, что этот скрипт взрывает ваш ввод текста пользователем ";". Для вашего использования может потребоваться некоторая очистка.

Счастливое кодирование.

  • 0
    Привет Богдан, большое спасибо, это то, что я ищу !!! просто вопрос, почему теперь мой "myfile.txt" больше не загружается в LISTBOX с вашим кодом? СПАСИБО ТАК МНОГО :)
  • 0
    ни один из предметов не загружается? Мой "myfile.txt" написан в одной строке, например: ITALY; USA; GERMANY и это работает как шарм: S
Показать ещё 5 комментариев

Ещё вопросы

Сообщество Overcoder
Наверх
Меню