file_put_contents('new.txt', implode(PHP_EOL, $new));
ramzes, теперь понял. Но это не то, что мне нужно было. У тебя получается вывод пары строк всегда одинаково, а мне надо случайным образом, чтобы брались случайные пары строк и при этом чтобы пары не дублировались.
Вот так вроде бы должно быть то, что надо
* (+/-)
if (!session_id()) session_start();
$file = file('file.txt');
$key = []; $val = [];
foreach ($file as $i => $str) {
if (!($i % 2)) {
$key[] = $str;
} else {
$val[] = $str;
}
}
if (!isset($_SESSION['arr'])) $_SESSION['arr'] = array_combine($key, $val);
for ($i = 0; $i < 3; $i++) {
if (count($_SESSION['arr']) == 0) break;
$key = array_rand($_SESSION['arr']);
file_put_contents('file_new.txt', $key . $_SESSION['arr'][$key], FILE_APPEND);
unset($_SESSION['arr'][$key]);
}
# Sitego (10.06.2016 / 15:41)
ramzes, теперь понял. Но это не то, что мне нужно было. У тебя получается вывод пары строк всегда одинаково, а мне надо случайным образом, чтобы брались случайные пары строк и при этом чтобы пары не
точно по условию. то что ты так бедно описал суть, я не виноват)
будет полноценное описание. будет и решение
ДоХтор, так вообще не работает.
Проверил на локалке, и подправил - теперь
работает как надо.
# Sitego (10.06.2016 / 15:55)
ДоХтор, так вообще не работает.
А ты этот код в отдельный файл сохраняешь? Код целиком скопировал? Сессии стартуют?
Попробуй в самом низу кода дописать
unset($_SESSION['arr']);
Сохрани изменения, обнови страницу, потом удали эту строку (или закомментируй), и снова обнови страницу.
# ДоХтор (10.06.2016 / 16:00)
А ты этот код в отдельный файл сохраняешь? Код целиком скопировал? Сессии стартуют?
Попробуй в самом низу кода дописать
unset($_SESSION['arr']);
Сохрани изменения, обнови страницу, потом удали
Да, точно, теперь всё работает. Спасибо
есть кусок кода
echo '<div class="c">';
echo '<form action="player.php?act=nomer&id=' . $arr[id] .
'" method="post">';
echo '<input type="text" name="nomer" value="' . $arr[nomer] . '"/><br/>';
echo "<input type='submit' title='Нажмите для отправки' name='submit' value='Изменить'/></form>";
echo '</div>';
как сделать так чтоб поле для изменения находилось не снизу а рядом с номером? и поле было чуть меньше
echo 'Номер: <b>' . $arr['nomer'] . '</b><br/>';
echo 'Номер: <b>' . $arr['nomer'] . '</b>
<div class="c">
<form action="player.php?act=nomer&id=' . $arr[id] .'" method="post">
<input type="text" name="nomer" value="' . $arr[nomer] . '"/><br/>
<input type='submit' title='Нажмите для отправки' name='submit' value='Изменить'/></form>
</div>';
с табуляцией не подзапаривался, т.к. неудобно в браузере, а вот 100500 echo ставить незачем