Форум: Форум PHPФорум ApacheФорум Регулярные ВыраженияФорум MySQLHTML+CSS+JavaScriptФорум FlashРазное
Новые темы: 0000000
C++. Мастер-класс в задачах и примерах. Авторы: Кузнецов М.В., Симдянов И.В. PHP. Практика создания Web-сайтов (второе издание). Авторы: Кузнецов М.В., Симдянов И.В. MySQL 5. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В. Самоучитель PHP 5 / 6 (3 издание). Авторы: Кузнецов М.В., Симдянов И.В. PHP 5/6. В подлиннике. Авторы: Кузнецов М.В., Симдянов И.В.
ВСЕ НАШИ КНИГИ
Консультационный центр SoftTime

Форум PHP

Выбрать другой форум

 

Здравствуйте, Посетитель!

вид форума:
Линейный форум Структурный форум

тема: input type=text + .txt
 
 автор: newcold   (10.02.2008 в 17:33)   письмо автору
 
 

пользователь вводитв input type=text : "МАШИНЫ"
а скрипт должен понять что это "машины.txt"

как это сделать...

   
 
 автор: exp   (10.02.2008 в 18:52)   письмо автору
 
   для: newcold   (10.02.2008 в 17:33)
 

просто $text .= '.txt';
а лучше что-бы только например были цифры и буквы разрешены
например
<?
$text 
preg_replace('#[^a-z0-9]+#i'''$_GET['text']);
if(
$text != ''$text .= '.txt';
else exit(
' ............................................<br>' "\n");

   
 
 автор: newcold   (11.02.2008 в 14:25)   письмо автору
 
   для: exp   (10.02.2008 в 18:52)
 

если честно, то не понял. У меня просто форма там....

   
 
 автор: arthur   (11.02.2008 в 15:14)   письмо автору
 
   для: newcold   (11.02.2008 в 14:25)
 

добрый день.

ехр все правильно написал.
То же самое проще выглядит так

$text=$_POST['text'];        //       принятие значения введенного в форме
$text.='txt';                           //       конконтинация к полученому значению расширение txt
                                            //       если посланное значение было "машина" то после $text.='txt';  это значение равно "машина.txt"


если этот ответ не подходит, тогда правильно сформулируйте вопрос

   
 
 автор: newcold   (11.02.2008 в 15:58)   письмо автору
 
   для: arthur   (11.02.2008 в 15:14)
 

А куда вставлять этот код?
у меня форма выглядит так:

<form action=forma.php method=GET>
введите название файла<br>
<input type=text name=nfile size=64 value=<? echo $_GET["nfile"];?>> //вот это место
<input type=submit name=edit value=открыть><p>

<?
if (!empty($_GET["edit"]))
{
if ((strcmp(htmlspecialchars($_GET['edit']),'сохранить')==0) & (!empty($_GET["nfile"])) & (!empty($_GET["txtn"])))
{$fp = fopen($_GET["nfile"],"w");
fwrite($fp,stripslashes($_GET["txtn"]));
fclose($fp);
echo "<b>Файл сохранен!</b><p><textarea name=txtn cols=50 rows=15></textarea>";}?>

<? if ((strcmp(htmlspecialchars($_GET['edit']),'открыть')==0) & (!empty($_GET["nfile"])))
{
$file_array = file($_GET["nfile"]);
echo "<textarea name=txtn cols=50 rows=15>";
for($i=0;$i<count($file_array);$i++)
{ printf(htmlspecialchars($file_array[$i]));}
echo "</textarea>";
}
} else echo "<textarea name=txtn cols=50 rows=20></textarea>"
?><br>
<input type=submit name=edit value=сохранить>
</form>

   
 
 автор: arthur   (11.02.2008 в 16:13)   письмо автору
 
   для: newcold   (11.02.2008 в 15:58)
 

Вот тот же код немного измененный


<?php
    $nfile
='\'\'';
    if (isset(
$_GET["nfile"]) && !empty($_GET["nfile"]))
    {
        
$nfile=$_GET["nfile"].'txt';
    }
?>

<form action=forma.php method=GET>
введите название файла<br>
<input type=text name=nfile size=64 value=<? echo $nfile//  здесь я поменял $_GET["nfile"] на $nfile ?> > 
<input type=submit name=edit value=открыть><p>

<?
if (!empty($_GET["edit"]))
{
if ((
strcmp(htmlspecialchars($_GET['edit']),'сохранить')==0) & (!empty($_GET["nfile"])) & (!empty($_GET["txtn"])))
{
$fp fopen($nfile,"w");  // здесь я поменял $_GET["nfile"] на $nfile
fwrite($fp,stripslashes($_GET["txtn"]));
fclose($fp);
echo 
"<b>Файл сохранен!</b><p><textarea name=txtn cols=50 rows=15></textarea>";}?>

<? if ((strcmp(htmlspecialchars($_GET['edit']),'открыть')==0) & (!empty($_GET["nfile"])))
{
$file_array file($nfile);  //  здесь я поменял $_GET["nfile"] на $nfile
echo "<textarea name=txtn cols=50 rows=15>";
for(
$i=0;$i<count($file_array);$i++)
printf(htmlspecialchars($file_array[$i]));}
echo 
"</textarea>";
}
} else echo 
"<textarea name=txtn cols=50 rows=20></textarea>"
?><br>

<input type=submit name=edit value=сохранить>
</form>


Но я бы использовал другую логику - сперва бы обработал весь GET в верхушку кода
и по необходимости ввел бы флаг (bool) результатирующий это действие и еще
некоторые действия здесь нужны ведь в nfile вернеться уже изменненое значение,
должно ли это быть таки или это не важно?

   
Rambler's Top100
вверх

Rambler's Top100 Яндекс.Метрика Яндекс цитирования