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

Форум PHP

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

 

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

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

тема: Переменные POST/GET-запроса
 
 автор: G-0045   (15.08.2008 в 00:25)   письмо автору
 
 

Имеется форма заполнения в броузере . Каким образом передать значения данных во введённых полях формы переменным? Например ввели название винчестера в одном поле, название CDROM во втором поле, затем нажали кнопку SUBMIT и эти значения присвоились перемнным $HDD и $CDROM соответственно. Затем записали в текстовый файл txt.log.

Я делал так, но переменым не присваиваются значения.

<?
print("<form action=index.php method=get>");
print("HDD: <input type=text name=HDD><br>");
print("CDROM: <input type=text name=CDROM><br>");
print("<input type=submit value=Send>");
print("</form>");


$file=fopen("txt.log","a+");
fputs($file,$HDD);
fputs($file,$CDROM);
fclose($file);
?>

  Ответить  
 
 автор: Trianon   (15.08.2008 в 00:31)   письмо автору
 
   для: G-0045   (15.08.2008 в 00:25)
 

$HDD = $_GET['HDD'];

и т.п.

  Ответить  
 
 автор: BinLaden   (15.08.2008 в 00:33)   письмо автору
 
   для: Trianon   (15.08.2008 в 00:31)
 

$HDD = isset( $_GET['HDD'] ) ? (string) $_GET['HDD'] : '';
$HDD = get_magic_quotes_gpc() ? stripslashes($HDD) : $HDD;

и т.п.

:)

  Ответить  
 
 автор: AcidTrash   (15.08.2008 в 00:34)   письмо автору
 
   для: G-0045   (15.08.2008 в 00:25)
 

Судя по всему выключен register_globals в php.ini, оно и правильно!
Вам стоит принимать данные, так же как и передаете.
например: не $HDD, а $_GET['HDD']

  Ответить  
 
 автор: G-0045   (15.08.2008 в 00:39)   письмо автору
 
   для: AcidTrash   (15.08.2008 в 00:34)
 

Помогите пожалуйста найти ошибку. Стоит задача такая:
прочитать из файла в массив базу данных адресов и паролей и в окне броузера построить таблицу. Имя файла с данными - mails.log

<?

 $file
=fopen("mails.log","r");
 
$file_array=file($file);
 
 
$file_array_size=sizeof($file_array);
 print(
"Количество записей: $file_array_size);
 
 print("
<table border=1>");
 reset(
$file_array);
 
$hd1=key($file_array);
 
$hd2=$file_array[$hd1];
 print("
<tr><th>$hd1</th><th>$hd2</th></tr>");
 next(
$file_array);
 while(list(
$mail,$pass)=each($file_array))
 {
 print("
<tr><th>$mail</th><th>$pass</th></tr>");
 }
 fclose(
$file);

?>

  Ответить  
 
 автор: mihdan   (15.08.2008 в 01:20)   письмо автору
 
   для: G-0045   (15.08.2008 в 00:39)
 

1. Как очистить содержимое $_GET или $_POST после работы с ними?

<?php
unset($_GET['var']);
?>


2. И как перевести каретку на новую строку?

<?php
$str 
"Строка один<br />\nСтрока 2";
?>

  Ответить  
 
 автор: G-0045   (17.08.2008 в 21:49)   письмо автору
 
   для: mihdan   (15.08.2008 в 01:20)
 

Спасибо, но мне нужно перевести каретку в файле, в который я записываю данные, т.е. в TXT.log, ведь в нём не действует HTML-тэг <br>

  Ответить  
 
 автор: Unknown   (17.08.2008 в 21:53)   письмо автору
 
   для: G-0045   (17.08.2008 в 21:49)
 

\r\n

  Ответить  
 
 автор: Shorr Kan   (18.08.2008 в 00:45)   письмо автору
 
   для: G-0045   (17.08.2008 в 21:49)
 

mihdan показал универсальный вариант, который сработает и для html, и для текста. Для чистого текста - только \n . Если планируется использовать текст в винде - \r\n

  Ответить  
 
 автор: G-0045   (18.08.2008 в 16:59)   письмо автору
 
   для: Shorr Kan   (18.08.2008 в 00:45)
 

Спасибо всем за помощь!


Помогите пожалуйста найти ошибку. Стоит задача такая:
прочитать из файла в массив базу данных адресов и паролей и в окне броузера построить таблицу. Имя файла с данными - mails.log

<? 

 $file
=fopen("mails.log","r"); 
 
$file_array=file($file); 
  
 
$file_array_size=sizeof($file_array); 
 print(
"Количество записей: $file_array_size); 
  
 print("
<table border=1>"); 
 reset(
$file_array); 
 
$hd1=key($file_array); 
 
$hd2=$file_array[$hd1]
 print("
<tr><th>$hd1</th><th>$hd2</th></tr>"); 
 next(
$file_array); 
 while(list(
$mail,$pass)=each($file_array)) 
 { 
 print("
<tr><th>$mail</th><th>$pass</th></tr>"); 
 } 
 fclose(
$file); 

?> 
    

  Ответить  
 
 автор: Trianon   (18.08.2008 в 17:01)   письмо автору
 
   для: G-0045   (18.08.2008 в 16:59)
 

У вас даже здесь по подсветке кода видно, что с кавычками беда.

  Ответить  
 
 автор: G-0045   (18.08.2008 в 17:06)   письмо автору
 
   для: Trianon   (18.08.2008 в 17:01)
 

Хорошо, кавычки глянул - исправил. Теперь вот что сообщает:

Warning: file() expects parameter 1 to be string, resource given in .....\www\to_array.php on line 4
Количество записей: 0
Warning: reset() [function.reset]: Passed variable is not an array or object in .....\www\to_array.php on line 10

Warning: key() [function.key]: Passed variable is not an array or object in .....\www\to_array.php on line 11
   

Warning: next() [function.next]: Passed variable is not an array or object in .....\www\to_array.php on line 14

Warning: Variable passed to each() is not an array or object in .....\www\to_array.php on line 15
 

  Ответить  
 
 автор: Trianon   (18.08.2008 в 17:35)   письмо автору
 
   для: G-0045   (18.08.2008 в 17:06)
 

Потому что в этом коде и с поправленными кавычками полная каша.
Вы бы прикрепили лог-файл.,показали бы что в нем такое лежит.
Потому что игра с ключами, затеянная в скрипте, не проясняет ничего.

  Ответить  
 
 автор: G-0045   (18.08.2008 в 17:43)   письмо автору
85 байт
 
   для: Trianon   (18.08.2008 в 17:35)
 

Вот этот файл. В каждой строке записан ящик и через пробел - пароль. Может неправильно считывается файл. Надо чтобы в качестве ключа массива записывался E-mail, а в качестве переменной в массиве - пароль. Может ещё символ @ как-то мешает?

Прикрепляю файл mails.log

  Ответить  
 
 автор: Trianon   (18.08.2008 в 17:57)   письмо автору
 
   для: G-0045   (18.08.2008 в 17:43)
 

<? 

 $file
=file("mails.log");
 foreach(
$file as $line)
 {
    
$line trim($line);
    if(
$line != '')
    {
        list(
$adr$pwd) = explode(' '$line);
        
$list[$adr] = $pwd;
    }
 }
 
print_r($list);

  Ответить  
Rambler's Top100
вверх

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