У меня есть форма:
<form method="POST" action="">
<textarea id="input_text" name="input_text"></textarea>
<input type="submit" name="decrypt" value="sm">
</form>
теперь я отправляю его, php пытается записать $ _POST ['input_text'] в файл, а затем выполнить другое действие после полного действия, php 'удалит созданный файл.
<?php
$Path = dirname(__FILE__).'/temp/';
$File_NAME = time().'.txt';
$input_text = stripslashes($_POST['input_text']);
$fp=fopen($Path.$File_NAME,'w');
fwrite($fp,$input_text);
fclose($fp);
//do some curl action with the file, then delete the file
if(file_exists($Path.$File_NAME))
unlink($Path.$File_NAME);
но если текст слишком сильный, пользователь отправляет форму, то они прерывают страницу, поэтому файл не удаляется. Я хочу направить изменение $ _POST ['input_text'] на type = 'file', но пользователь также может использовать его, например, в textarea. поэтому php не нужно удалять файл, потому что это файл tmp.
В соответствии с вашим Редактированием вопроса, возможно решение сначала проверить $_POST['input_text']
на длину, прежде чем даже открыть файл. Если текст слишком длинный, отобразите сообщение об ошибке.
Я не думаю, что файл нужен даже в этом случае.
СТАРЫЙ ОТВЕТ:
Выбрав $_POST['input_text]
, вы можете:
$txt = $_POST['input_text'];
$file = fopen("file.txt", "w+"); //w+ indicates read + write
fwrite($file,$txt); //to ride the 'input_txt'
Затем выполните действия, которые вы хотите, и, наконец, удалите файл, если необходимо, используя:
fclose($file);
delete("file.txt");
Но обязательно дайте PHP
странице разрешения для чтения/записи в первую очередь.