Я новичок в 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>
Надеюсь, у меня вопрос правильно, и я думаю, что это то, что вам нужно:
<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
поэтому я понял это.
Обратите внимание, что этот скрипт взрывает ваш ввод текста пользователем ";". Для вашего использования может потребоваться некоторая очистка.
Счастливое кодирование.
ITALY; USA; GERMANY
и это работает как шарм: S