|  | 
|  | Православный форум Доброе слово | Никакое гнилое слово да не исходит из уст ваших, а только доброе для назидания в вере, дабы оно доставляло благодать слушающим (Еф.4:29) |  |  
	
	
	
	
		|  |  
			| Автор | Сообщение |  
	
		| Kemsit | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  01 май 2011, 20:16  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 10 янв 2009, 22:47
 Сообщения: 1422
 
 Возраст: 34
 Вероисповедание: Православный, МП
 | 
			
				| Привожу конкретные примеры кода, на которые Вам, уважаемый Игорь Валерьевич, нужно опираться при написании Вашей программы. 1. Запись в текстовый файл созданной переменной: Код: <?php//открываем файл для записи.
 //Внимание!! права на запись файла должны быть 0777
 $fp = fopen("text.txt", "a");
 //записываем в переменную выражение для записи
 $text="то, что надо записать";
 //записываем в файл значение из переменной $text
 fwrite($fp, $text."\r\n");
 // закрываем файл
 fclose($fp);
 ?>
 2. Чтение из файла: Код: <?php//Открываем файл
 $f = fopen( "file.txt" , "r" );
 //Считываем информацию в переменную $text
 $text = fread( $f , filesize( $f ) );
 //Закрываем файл
 close($f);
 //Выводим содержимое файла
 print $text;
 ?>
 3. Удаление строчки из файла: Код: <?php//открываем файл
 $f_arr = file( "file.txt" );
 //Какую строку нужно удалить
 //Нумерация начинается с нуля
 $needle = 2;
 //удаление строки из файла
 array_splice( $f_arr , $needle , 1 );
 $f = fopen( "file.txt" , "w" );
 for( $i = 0; $i < count( $f_arr ); $i++ )
 {  fwrite( $f , $f_arr[$i] . "\n" );  }
 // закрываем файл.
 close($f);
 ?>
 4. Как скопировать, переименовать, удалить файл или директорию: Код: <?php// Удаление файла
 unlink( "file.txt" );
 // Удаление директории. Внимание, папка должна быть пустой
 rmdir( "folder/" );
 // Копирование.
 copy( "otkuda.txt" , "kuda.txt" );
 // Переименование.
 rename( "chto.txt" , "vo_chto.txt" );
 ?>
 5. Как очистить содержимое файла: Код: <?php//Открываем файл
 $f = fopen( "file.txt" , "r" );
 //Обнуляем его содержимое
 ftruncate( $f , 0 );
 //закрываем файл
 close($f);
 ?>
 Вместо конкретных названий Ваших, уважаемый Игорь Валерьевич, файлов и переменных я позволил себе привести здесь альтернативные имена и адресации. Сопровождая всё комментариями. Внимательно их изучив, Вам не составит труда дописать свой код._________________
 Меня зовут Сергей.
 
 
 |  |  
		|  |   |  |  |  
	
		| Viv | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  01 май 2011, 20:19  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 16 мар 2011, 18:55
 Сообщения: 1967
 
 Возраст: 31
 Откуда: Волжский
 Вероисповедание: Православный, МП
 | 
			
				| Спасибо! Я как-нибудь попробую. _________________Игорь Валерьевич вернул себе свой прежний ник Viv 
 
 |  |  
		|  |   |  |  |  
	
		| Viv | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  02 май 2011, 09:32  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 16 мар 2011, 18:55
 Сообщения: 1967
 
 Возраст: 31
 Откуда: Волжский
 Вероисповедание: Православный, МП
 | 
			
				| витт писал(а): Игорь, после прочтения твоих топиков действительно возникает чувство, что отец тебя не научил элементарному уважению к другим людям! Виталий, я ещё раз повторюсь, у меня бывают такие резуие выражения, но других людей я уважаю! Резкие выражения - это ещё не первый признак неуважения, первый признак неуважения - это когда я уже слишком часто начну грубить людям, а то и потом начну обзываться! Уверен, что такого не будет.  _________________Игорь Валерьевич вернул себе свой прежний ник Viv 
 
 |  |  
		|  |   |  |  |  
	
		| Георгий_O | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  02 май 2011, 22:56  |  |  
		| 
			
			| мне тут понравилось |  |  |  Зарегистрирован: 22 фев 2010, 14:45
 Сообщения: 433
 
 Возраст: 47
 Откуда: Череповец
 Вероисповедание: Православный, МП
 | 
			
				| Код: <?php $name = $_GET['name'];
 $email = $_GET['email'];
 $editlink = $_GET['editlink'];
 $money = $_GET['money'];
 $id = $_GET['id'];
 $progname = $_GET['progname'];
 
 echo "Отправка данных программы подтверждена. <br />";
 echo "Ваше имя: " . $name . "<br />";
 echo "Ваш E-mail адрес: " . $email . "<br />";
 echo "<a href=\"$editlink\">Изменить все данные формы</a> <br />";
 
 $filename = 'mysoftlog.txt';
 
 if (file_exists($filename))
 {
 $handle = fopen($filename, "r");
 $mytext1 = fgets($handle);
 $bool = 0;
 $poz = 0;
 $i = 0;
 while (!feof($handle))
 {
 $mytext2 = fgets($handle);
 $i = $i + 1;
 if ($mytext1[0] == $name)
 {
 if ($mytext2[0] == $email)
 {
 $bool = 1;
 $poz = $i;
 }
 }
 $mytext1 = $mytext2;
 }
 fclose ($handle);
 if ($bool == 1)
 {
 //найдено совпадение имени и е-майла
 //позиция совпадения - $poz
 }
 else
 {
 $handle = fopen($filename, "a");
 fwrite ($handle, $name . "\n");
 fwrite ($handle, $email . "\n");
 fwrite ($handle, $editlink . "\n");
 fwrite ($handle, $money . "\n");
 fwrite ($handle, $id . "\n");
 fwrite ($handle, $progname . "\n");
 fwrite ($handle, "---" . "\n");
 fclose ($handle);
 }
 }
 else
 {
 $handle = fopen($filename, "w");
 fwrite ($handle, $name . "\n");
 fwrite ($handle, $email . "\n");
 fwrite ($handle, $editlink . "\n");
 fwrite ($handle, $money . "\n");
 fwrite ($handle, $id . "\n");
 fwrite ($handle, $progname . "\n");
 fwrite ($handle, "---" . "\n");
 fclose ($handle);
 }
 ?>
 код полностью рабочий - проверен что делать если имя и е-майл уже содержится в файле вот эту фразу "Если да, то остальные переменные в txt-файле должны быть под именем и E-mail адресом пользователя"  я не понял опытный сишник без труда заметит, что манера писания не сишная))) Kemsit писал(а): 7. Георгий, с Вами бы было крайне интересно пообщаться. Я жуткий нуб в VB, несмотря на то, что такой курс у меня был. Не мой профиль, увы. Хотя язык крайне интересный. я всегда открыт для диалога только зачем Вам бейсик и чем же он интересен? если Вам си ближе, лучше обратите внимание на шарп я на бейсике сижу, только потому, что с самого начала его изучал - манера писания у меня уже бейсичная - все эти точки с запятой в конце строки...     после шестого бейсика встал вопрос VB изучать, шарп или плюсы - всё пробовал, но именно из-за этой манеры писания на VB стал писать. жалею, что с самого начала стал учиться на бейсике, учился бы на паскале - сейчас бы на шарпе писал или на плюсах. хотя... VBA очень выручает_________________
 Простите меня, люди добрые
 Дай Вам Бог здоровья
 
 
 |  |  
		|  |   |  |  |  
	
		| Kemsit | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  02 май 2011, 23:05  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 10 янв 2009, 22:47
 Сообщения: 1422
 
 Возраст: 34
 Вероисповедание: Православный, МП
 | 
			
				| Георгий_O писал(а): я всегда открыт для диалога только зачем Вам бейсик и чем же он интересен? если Вам си ближе, лучше обратите внимание на шарп я на бейсике сижу, только потому, что с самого начала его изучал - манера писания у меня уже бейсичная - все эти точки с запятой в конце строки...     после шестого бейсика встал вопрос VB изучать, шарп или плюсы - всё пробовал, но именно из-за этой манеры писания на VB стал писать. жалею, что с самого начала стал учиться на бейсике, учился бы на паскале - сейчас бы на шарпе писал или на плюсах. хотя... VBA очень выручаетЯ как раз изначально, с класса 7, учился на Паскале. А теперь как раз в основном и работаю на C# и С++. Скажем, основное направление вузовской подготовки. На плюсах программирую 4 года, на шарпе уже два. Бейсик интересен для всестороннего развития. Его тоже можно качественно использовать. Большое желание есть ещё изучить яву и питон. Знакомы с ними?_________________
 Меня зовут Сергей.
 
 
 |  |  
		|  |   |  |  |  
	
		| Viv | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  03 май 2011, 05:43  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 16 мар 2011, 18:55
 Сообщения: 1967
 
 Возраст: 31
 Откуда: Волжский
 Вероисповедание: Православный, МП
 | 
			
				| Георгий_О писал(а): что делать если имя и е-майл уже содержится в файле вот эту фразу "Если да, то остальные переменные в txt-файле должны быть под именем и E-mail адресом пользователя" я не понял То есть, если пользователь вводит в адресную строку такие же имя и E-mail, а данные о программе (ID, стимость и т.д.) совсем другие, то данные должны уже добавляться ПОД именем и E-mail'ом пользователя. В самом TXT-файле для каждого пользователя своя, так сказать, колонка. В одной колонке помещаются записи о программах одного пользователя, в другой - другого. Георгий_О писал(а): код полностью рабочий - проверен А как Вы его проверяли? Через Денвер? Я как-то ставил себе последнюю версию Денвера, а у меня после этого Интернет перестал работать, пришлось удалить Денвер.    Как его поставить по-нормальному, чтобы Интернет работал как следует  _________________Игорь Валерьевич вернул себе свой прежний ник Viv 
 
 |  |  
		|  |   |  |  |  
	
		| Георгий_O | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  03 май 2011, 20:40  |  |  
		| 
			
			| мне тут понравилось |  |  |  Зарегистрирован: 22 фев 2010, 14:45
 Сообщения: 433
 
 Возраст: 47
 Откуда: Череповец
 Вероисповедание: Православный, МП
 | 
			
				| вот неоптимизированный код, проверено рабочий Код: <?php $name = $_GET['name'];
 $email = $_GET['email'];
 $editlink = $_GET['editlink'];
 $money = $_GET['money'];
 $id = $_GET['id'];
 $progname = $_GET['progname'];
 
 echo "Отправка данных программы подтверждена. <br />";
 echo "Ваше имя: " . $name . "<br />";
 echo "Ваш E-mail адрес: " . $email . "<br />";
 echo "<a href=\"$editlink\">Изменить все данные формы</a> <br />";
 
 $filename = 'mysoftlog.txt';
 
 if (file_exists($filename))
 {
 $handle = fopen($filename, "r");
 $count = 0;
 $bool = 0;
 $poz = 0;
 $arr = array();
 while (!feof($handle))
 {
 $count = $count + 1;
 $arr[$count] = fgets($handle);
 }
 fclose ($handle);
 
 for($i=1 ; $i<$count ; $i++)
 {
 echo "arr[$i] =  $arr[$i] <br />";
 if ((str_replace("\n", null, $arr[$i]) == $name)and(str_replace("\n", null, $arr[$i+1]) == $email))
 {
 $bool = 1;
 $poz = $i;
 }
 }
 if ($bool == 1)
 {
 echo "poz = $poz <br />";
 $arr2 = array();
 for($i=1 ; $i<$poz+6 ; $i++)
 {
 $arr2[$i] = $arr[$i];
 }
 $arr2[$poz+6] = "+";
 $arr2[$poz+7] = $editlink;
 $arr2[$poz+8] = $money;
 $arr2[$poz+9] = $id;
 $arr2[$poz+10] = $progname;
 
 for($i=$poz+6 ; $i<count($arr)+1 ; $i++)
 {
 $arr2[$i+5] = $arr[$i];
 }
 }
 else
 {
 $handle = fopen($filename, "a");
 fwrite ($handle, $name . "\n");
 fwrite ($handle, $email . "\n");
 fwrite ($handle, $editlink . "\n");
 fwrite ($handle, $money . "\n");
 fwrite ($handle, $id . "\n");
 fwrite ($handle, $progname . "\n");
 fwrite ($handle, "-" . "\n");
 fclose ($handle);
 }
 }
 else
 {
 $handle = fopen($filename, "w");
 fwrite ($handle, $name . "\n");
 fwrite ($handle, $email . "\n");
 fwrite ($handle, $editlink . "\n");
 fwrite ($handle, $money . "\n");
 fwrite ($handle, $id . "\n");
 fwrite ($handle, $progname . "\n");
 fwrite ($handle, "-" . "\n");
 fclose ($handle);
 }
 ?>
 
 я проверял с помощью topserver 2.1 Kemsit писал(а): Бейсик интересен для всестороннего развития. Его тоже можно качественно использовать.  а в какой IDE Вы программируете? когда-то читал, что в ms visual studio в одном проекте можно часть кода писать на бейсике, часть на шарпе, но не нашел как это делается, не встречали такое? Kemsit писал(а): Большое желание есть ещё изучить яву и питон. Знакомы с ними? нет_________________
 Простите меня, люди добрые
 Дай Вам Бог здоровья
 
 
 |  |  
		|  |   |  |  |  
	
		| Viv | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  03 май 2011, 21:31  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 16 мар 2011, 18:55
 Сообщения: 1967
 
 Возраст: 31
 Откуда: Волжский
 Вероисповедание: Православный, МП
 | 
			
				| Георгий_О писал(а): я проверял с помощью topserver 2.1 А это сервер такой, или что? Попробую поставить._________________Игорь Валерьевич вернул себе свой прежний ник Viv 
 
 |  |  
		|  |   |  |  |  
	
		| Георгий_O | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  04 май 2011, 06:00  |  |  
		| 
			
			| мне тут понравилось |  |  |  Зарегистрирован: 22 фев 2010, 14:45
 Сообщения: 433
 
 Возраст: 47
 Откуда: Череповец
 Вероисповедание: Православный, МП
 | 
			
				| да, вроде это локальный сервер
 ой, забыл из переменной arr2 в файл записать? сможете сами? вобщем надо:
 после
 for($i=$poz+6 ; $i<count($arr)+1 ; $i++)
 {
 $arr2[$i+5] = $arr[$i];
 }
 1. открыть файл для записи (не для добавления)
 2. открыть цикл от 1 до count($arr2)+1
 3. записать $arr2 в файл
 4. закрыть цикл
 5. закрыть файл
 _________________
 Простите меня, люди добрые
 Дай Вам Бог здоровья
 
 
 |  |  
		|  |   |  |  |  
	
		| Viv | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  04 май 2011, 06:02  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 16 мар 2011, 18:55
 Сообщения: 1967
 
 Возраст: 31
 Откуда: Волжский
 Вероисповедание: Православный, МП
 | 
			
				| А что это за переменная $arr2? У меня в скрипте вроде нет такой переменной. _________________Игорь Валерьевич вернул себе свой прежний ник Viv 
 
 |  |  
		|  |   |  |  |  
	
		| Георгий_O | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  04 май 2011, 11:27  |  |  
		| 
			
			| мне тут понравилось |  |  |  Зарегистрирован: 22 фев 2010, 14:45
 Сообщения: 433
 
 Возраст: 47
 Откуда: Череповец
 Вероисповедание: Православный, МП
 | 
			
				| в середину файла записать строку нельзя, поэтому мы сначала считываем файл в переменную arr, потом преобразуем её в переменную arr2 с добавление в середину нужных данных и потом переменную arr2 записываем в файл _________________
 Простите меня, люди добрые
 Дай Вам Бог здоровья
 
 
 |  |  
		|  |   |  |  |  
	
		| Viv | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  04 май 2011, 15:24  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 16 мар 2011, 18:55
 Сообщения: 1967
 
 Возраст: 31
 Откуда: Волжский
 Вероисповедание: Православный, МП
 | 
			
				| Всё понятно. Надо подумать над этим и попробовать. _________________Игорь Валерьевич вернул себе свой прежний ник Viv 
 
 |  |  
		|  |   |  |  |  
	
		| Viv | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  28 июн 2011, 14:52  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 16 мар 2011, 18:55
 Сообщения: 1967
 
 Возраст: 31
 Откуда: Волжский
 Вероисповедание: Православный, МП
 | 
			
				| Я немного свой скрипт упростил. Нашёл хостинг с поддержкой PHP, а там выводится такая ошибка: Warning: fopen(Activation.txt) [function.fopen]: failed to open stream: Permission denied in /home/bos/i/n/t/intsoft/public_html/Activation.php on line 5 Warning: fwrite(): supplied argument is not a valid stream resource in /home/bos/i/n/t/intsoft/public_html/Activation.php on line 9 Warning: fclose(): supplied argument is not a valid stream resource in /home/bos/i/n/t/intsoft/public_html/Activation.php on line 11 Warning: virtual() [function.virtual]: Unable to include '/lvt.htm' - request execution failed in /home/bos/i/n/t/intsoft/public_html/Activation.php on line 12 Как видно из сообщения, там ошибка на линиях 5, 9 и 11. Так как скрипт упрощён, там осталась только одна переменная $id. Вот код скрипта: Код: <?php$id = $_GET['id'];
 //открываем файл для записи.
 //Внимание!!! права на запись файла должны быть 0777
 $fp = fopen("Activation.txt", "a");
 //записываем в переменную выражение для записи
 $text="$id";
 //записываем в файл значение из переменной $text
 fwrite($fp, $text."\r\n");
 // закрываем файл
 fclose($fp);
 echo virtual("/lvt.htm");
 echo "<br> <br> Активация программы успешно подтверждена! Ваш ключ активации: <br> $id <br> Скопируйте его в Вашу программу. <br>";
 ?>
 В чём тут ошибка? Сообщение, которое я тут в скрипте указал, выводится на экран успешно, но в файл не записывается. Кстати, тут на хостинге пишут, что пользователь сам должен баннер устанавливать туда, иначе они удалят мой сайт.virtual("/lvt.htm") Это код баннера, который они там написали для PHP._________________Игорь Валерьевич вернул себе свой прежний ник Viv 
 
 |  |  
		|  |   |  |  |  
	
		| Viv | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  28 июн 2011, 14:57  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 16 мар 2011, 18:55
 Сообщения: 1967
 
 Возраст: 31
 Откуда: Волжский
 Вероисповедание: Православный, МП
 | 
			
				| _________________Игорь Валерьевич вернул себе свой прежний ник Viv 
 
 |  |  
		|  |   |  |  |  
	
		| Георгий_O | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  28 июн 2011, 17:21  |  |  
		| 
			
			| мне тут понравилось |  |  |  Зарегистрирован: 22 фев 2010, 14:45
 Сообщения: 433
 
 Возраст: 47
 Откуда: Череповец
 Вероисповедание: Православный, МП
 | 
			
				| можно попробовать вместо fopen писать @fopenвместо fwrite писать @fwrite
 вместо fclose писать @fclose
 _________________
 Простите меня, люди добрые
 Дай Вам Бог здоровья
 
 
 |  |  
		|  |   |  |  |  
	
		| Viv | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  28 июн 2011, 18:23  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 16 мар 2011, 18:55
 Сообщения: 1967
 
 Возраст: 31
 Откуда: Волжский
 Вероисповедание: Православный, МП
 | 
			
				| Всё получилось, слава Богу! Переехал на другой хостинг. Он правда глючит немного, но скрипт работает в неизменном виде, и баннер не нужно ставить. Теперь на php пишу админку для управления ключами активации своих программ. _________________Игорь Валерьевич вернул себе свой прежний ник Viv 
 
 |  |  
		|  |   |  |  |  
	
		| Viv | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  29 июн 2011, 10:33  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 16 мар 2011, 18:55
 Сообщения: 1967
 
 Возраст: 31
 Откуда: Волжский
 Вероисповедание: Православный, МП
 | 
			
				| А для настройки этой админки буду потом EXE-файл создавать специальный. _________________Игорь Валерьевич вернул себе свой прежний ник Viv 
 
 |  |  
		|  |   |  |  |  
	
		| Viv | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  04 июл 2011, 11:12  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 16 мар 2011, 18:55
 Сообщения: 1967
 
 Возраст: 31
 Откуда: Волжский
 Вероисповедание: Православный, МП
 | 
			
				| Помню ещё примерно, как сделать так, чтобы в php отправить сообщение админу, как в форме обратной связи. А вот как сделать в php автоответчик, чтобы сообщение отправлялось обратно на E-mail посетителю? _________________Игорь Валерьевич вернул себе свой прежний ник Viv 
 
 |  |  
		|  |   |  |  |  
	
		| Viv | 
			
			
				|  Заголовок сообщения: Re: Помогите дописать php-скрипт!   Добавлено:  05 июл 2011, 17:24  |  |  
		| 
			
			| я просто здесь живу :) |  |  |  Зарегистрирован: 16 мар 2011, 18:55
 Сообщения: 1967
 
 Возраст: 31
 Откуда: Волжский
 Вероисповедание: Православный, МП
 | 
			
				| Ну что, никто не знает, как такой скрипт в php сделать? (см. сообщение выше) _________________Игорь Валерьевич вернул себе свой прежний ник Viv 
 
 |  |  
		|  |   |  |  |  |  |  Информация о пользователях форума
	| Сейчас этот форум просматривают: нет зарегистрированных пользователей и гости: 3 |  |  | 
	|  |  | Вы не можете начинать темыВы не можете отвечать на сообщения
 Вы не можете редактировать свои сообщения
 Вы не можете удалять свои сообщения
 
 |  |  |