[php] Новичкам: задаем вопросы

Discussion in 'PHP' started by _Great_, 26 May 2007.

Thread Status:
Not open for further replies.
  1. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    Nightmarе session_start() в начало скрипта?)

    И добавить в первое условие

    || $_SESSION['lol']==1
     
    _________________________
    #9841 Gifts, 2 May 2009
    Last edited: 2 May 2009
    1 person likes this.
  2. Veteriuz

    Veteriuz New Member

    Joined:
    22 Apr 2009
    Messages:
    13
    Likes Received:
    3
    Reputations:
    0
    большое спасибо m0Hze, L I G A, rushter, art2222 за советы по выбору проги для того, чтобы писать скрипты
    (остановился на PHP Expert Editor)

    вот мой первый маленький скрипт, который дает хоть какую пользу:)
    PHP:
    <?
    $file fopen("text.txt""w+"); // открваем(в случее отсутствия создаем) файл text.txt
    for ($i 1$i <= 5$i++) { // задаем цикл от 1 до 5
    $s $i 2// вычисляем
    fputs($file"$s"); // вписываем в отктытый файл результат вычислений
    echo $s// показываем результаты вычислений
    // заканчиваем цикл
    fclose($file); // закрываем файл
    ?>
    вопрос: как сделать так, чтобы записи в файл(с запуском скрипта) добавлялись. при "w+" файл очищается и создается новый,
    вопрос2: возможно ли чтобы каждый результат вычислений записывался в отдельную строку в файл, а не сплошным текстом?
     
    #9842 Veteriuz, 3 May 2009
    Last edited: 3 May 2009
  3. wildshaman

    wildshaman Elder - Старейшина

    Joined:
    16 Apr 2008
    Messages:
    477
    Likes Received:
    483
    Reputations:
    99
    1) $file = fopen("text.txt", "a+");
    2) fputs($file, "{$s}\r\n");
     
    1 person likes this.
  4. Veteriuz

    Veteriuz New Member

    Joined:
    22 Apr 2009
    Messages:
    13
    Likes Received:
    3
    Reputations:
    0
    при много благодарен:)


    после некоторого преобразования скрипт получил следующий вид:
    PHP:
    <?
    $file fopen("text.txt""a+"); // открваем файл text.txt (добавляя новую запись)
    for ($i 0$i <= 999999$i++) { // задаем цикл
    $s md5($i); // вычисляем
    fputs($file"{$s}:$i\r\n"); // вписываем по маске [md5:пароль]
    echo "$s:$i<br>"// показываем по маске [md5:пароль]
    // завершаем цикл
    fclose($file); // закрываем файл
    ?>
    выдает ошибку:
    пробовал убирать
    PHP:
    echo "$s:$i<br>";
    не помогло
    успел перебрать первые 341572 (файл 13,5 Мб)


    юзаю денвер(версию скачивал вчера)
    решаема ли проблема?
    или ничего иного, кроме как, уменьшать цикл, нет?
     
    #9844 Veteriuz, 3 May 2009
    Last edited: 3 May 2009
  5. Krist_ALL

    Krist_ALL Banned

    Joined:
    14 Jan 2009
    Messages:
    436
    Likes Received:
    193
    Reputations:
    24
    У тебя вышел лимит работы скрипта в 30сек,напиши в начале скрипта set_time_limit(0);
     
    1 person likes this.
  6. Gifts

    Gifts Green member

    Joined:
    25 Apr 2008
    Messages:
    2,494
    Likes Received:
    807
    Reputations:
    614
    m0Hze Как раз лучше не надо. Скрипт не выводящий текст в браузер и зациклившийся - нельзя будет остановить без завершения процесса в памяти
     
    _________________________
    1 person likes this.
  7. Mixon

    Mixon Elder - Старейшина

    Joined:
    12 Mar 2008
    Messages:
    394
    Likes Received:
    119
    Reputations:
    12
    Как отправить ети хидеры через курл?


    $head = "
    User-Agent: Mozilla/5.0 (Windows; U; Windows NT 5.1; ru; rv:1.8.1.7) Gecko/20070914 Firefox/2.0.0.7
    Accept: text/xml,application/xml,application/xhtml+xml,text/html;q=0.9,text/plain;q=0.8,image/png,*/*;q=0.5
    Accept-Language: ru-ru,ru;q=0.8,en-us;q=0.5,en;q=0.3
    Accept-Encoding: gzip,deflate
    Accept-Charset: windows-1251,utf-8;q=0.7,*;q=0.7
    Keep-Alive: 300
    Connection: keep-alive\r\n
    Cookie: $cookie\r\n
    Referer: http://vkontakte.ru/swf/Graffiti.swf?12\r\n
    Content-type: multipart/form-data; boundary=--OLEG-ANDREEV-PAVEL-DUROV-GRAFFITI-POST\r\n
    ----OLEG-ANDREEV-PAVEL-DUROV-GRAFFITI-POST
    Content-Disposition: form-data; name=\"Signature\"\r\n\r\n
    \r\n
    ----OLEG-ANDREEV-PAVEL-DUROV-GRAFFITI-POST
    Content-Disposition: form-data; name=\"Filedata\"; filename=\"graffiti.png\"
    Content-Type: image/png\r\n\r\n
    ----OLEG-ANDREEV-PAVEL-DUROV-GRAFFITI-POST
    Content-Disposition: form-data; name=\"Upload\"
    Submit Query
    ----OLEG-ANDREEV-PAVEL-DUROV-GRAFFITI-POST--";
    $head .=" Content-length: ".strlen($head2)."\r\n\r\n";
    $head .= file_get_contents($filename);
    $head .=md5(substr(base64_encode(file_get_contents($filename)), 0, 1024));
     
  8. Krist_ALL

    Krist_ALL Banned

    Joined:
    14 Jan 2009
    Messages:
    436
    Likes Received:
    193
    Reputations:
    24
    Через сокеты.
    $a =fsockopen('test.Ru',80);
    fputs($a,$headers);
    $answer =fgets($a,1024);
     
    #9848 Krist_ALL, 3 May 2009
    Last edited: 3 May 2009
  9. Mixon

    Mixon Elder - Старейшина

    Joined:
    12 Mar 2008
    Messages:
    394
    Likes Received:
    119
    Reputations:
    12
    Вот именно проблема в том,что я из соксов переписываю на курл!
     
  10. Krist_ALL

    Krist_ALL Banned

    Joined:
    14 Jan 2009
    Messages:
    436
    Likes Received:
    193
    Reputations:
    24
    Ну так бы сразу и сказал бы.
    $a =curl_init('http://...');
    ...
    Curl_setopt($a,CURLOPT_POSTFIELDS, $HEADERS);
    а вообще зайди сюда http://www.php.su/functions/?cat=curl
     
  11. .:EnoT:.

    .:EnoT:. Сексуальное чудовище

    Joined:
    29 May 2007
    Messages:
    803
    Likes Received:
    559
    Reputations:
    50
    Поля в boundary отправляются курлом с добавлением собачки + полный путь к файлу
     
  12. mailbrush

    mailbrush Well-Known Member

    Joined:
    24 Jun 2008
    Messages:
    1,997
    Likes Received:
    996
    Reputations:
    155
    А где там есть отправка хидеров? Там только переменная $HEADERS, в которой может быть что угодно (в т.ч. параментры пост-запроса).
     
  13. Banderos_Russia

    Banderos_Russia Elder - Старейшина

    Joined:
    11 Jun 2007
    Messages:
    60
    Likes Received:
    18
    Reputations:
    0
    помогите реализовать простейшее редактирование текстовых файлов на пхп, чтобы открыл записал что нужно и сохранил в txt со своим именем в определённую папку на хосте, без всяких кнопок, шрифтов и тп.

    Перепробовал много всяких редакторов, но они мне не подходят, нужен самый обычный.

    Спасибо заранее :)
     
  14. Tombik

    Tombik Banned

    Joined:
    21 Dec 2008
    Messages:
    18
    Likes Received:
    85
    Reputations:
    13
    PHP:
    <html>
    <head>
        <title>Главная</title>
        <meta http-equiv="content-type" content="text/html; charset=windows-1251">
        <link rel='stylesheet' href='/template/style.css' type='text/css' />
    </head>

    <?

    echo <<<HTML

    <body style="background:pic/Black.gif">

        <form action="enter.php" method="post">
    логин
        <input type="text" name="login" value="" onfocus="this.value=''" /><br><br>
    пароль
        <input type="password" name="pass" value="" onfocus="this.value=''" />

        <input type="submit" value="Вход" />
        </form>

        </div>
     <a href="partners/reg.php">Регистрация</a> 
    HTML;

    echo <<<HTML

    HTML;

    ?>
    </body>
    </html>

    Помогите разобраться, нужно сделать фоновый рис. + расставить всё пропорционально + кнопка "регистрация", как тут, мучаюсь уже час, не могу сделать. буду оч. благодарен.
     
  15. xtra

    xtra New Member

    Joined:
    11 Mar 2007
    Messages:
    26
    Likes Received:
    2
    Reputations:
    0
    скрипт загрузки файла
    Code:
    <?php
    $error = "";
    $msg = "";
    $fileElementName = 'fileToUpload';
    $i = 0;
    $files_count = sizeof($_FILES[$fileElementName]["name"]);
    
    for ($i = 0; $i < $files_count-1; $i++) {	
    	if(!empty($_FILES[$fileElementName]['error'][$i]))
    	{
    		switch($_FILES[$fileElementName]['error'][$i])
    		{
    
    			case '1':
    				$error = 'размер загруженного файла превышает размер установленный параметром upload_max_filesize  в php.ini ';
    				break;
    			case '2':
    				$error = 'размер загруженного файла превышает размер установленный параметром MAX_FILE_SIZE в HTML форме. ';
    				break;
    			case '3':
    				$error = 'загружена только часть файла ';
    				break;
    			case '4':
    				$error = 'файл не был загружен (Пользователь в форме указал неверный путь к файлу). ';
    				break;
    			case '6':
    				$error = 'неверная временная дирректория';
    				break;
    			case '7':
    				$error = 'ошибка записи файла на диск';
    				break;
    			case '8':
    				$error = 'загрузка файла прервана';
    				break;
    			case '999':
    			default:
    				$error = 'No error code avaiable';
    		}
    	}elseif(empty($_FILES[$fileElementName]['tmp_name'][$i]) || $_FILES[$fileElementName]['tmp_name'][$i] == 'none')
    	{
    		$error = 'Ничего не было загружено...';
    	}else 
    	{
    			if (file_exists("../../../upload/ftp/" . $_FILES[$fileElementName]['name'][$i])){
          			$error =$_FILES[$fileElementName]['name'][$i] . " уже существует. ";
          		}
        		else{
        			$msg .= "######/upload/" . $_FILES[$fileElementName]['name'][$i];
        			//$msg .= " File Temp Name: " . $_FILES['fileToUpload']['tmp_name'] . "<br/>";
        			//$msg .= " File Type: " . $_FILES[$fileElementName]['type'][$i] . "<br/>";
    				//$msg .= " File Size: " . (@filesize($_FILES[$fileElementName]['tmp_name'][$i])/ 1024)."Kb";
    				move_uploaded_file($_FILES[$fileElementName]['tmp_name'][$i], "../../../upload/ftp/" . $_FILES[$fileElementName]['name'][$i]);
    			}
    			//for security reason, we force to remove all uploaded file
    			@unlink($_FILES[$fileElementName][$i]);		
    	}		                      
    	echo "<p><input type='text' name='comment' size='40' value='". $msg."' readonly></p>";
    	/* echo "" . $msg . "\n"; */
    
    }
    ?>
    	
    


    может кто подскажешь как выполнить замену пробелов в имени файла на _ ?
     
  16. svesve

    svesve Elder - Старейшина

    Joined:
    15 Jun 2007
    Messages:
    574
    Likes Received:
    86
    Reputations:
    11
    Возможно у кого и есть уже готовое решение,хотябы частично.
    требуется начертить календарь след образом
    месяца
    номер недели
    Пример
    Январь Феврель Март
    1 2 3 4 5 6 7 8 9 10 11 ....
    соответсвенно под каждой неделей не плохо бы видеть числа например
    1 неделя с 1 по 3 января и т.д

    кто может помочь или подсказать алгоритм действий
     
  17. Pashkela

    Pashkela Динозавр

    Joined:
    10 Jan 2008
    Messages:
    2,750
    Likes Received:
    1,044
    Reputations:
    339
    В своих логах юзаю такой класс календаря:

    calendar.php:

    http://slil.ru/27507563

    использование (вызов):

    PHP:
    include "calendar.php";
    // Если месяц/год не установлены, используем текщие месяц/год
    $d getdate(time());
    if (
    $month == ""$month $d["mon"];
    if (
    $year == ""$year $d["year"];
    $cal = new MyCalendar;
    $cal->setStartDay(1);
    echo 
    $cal->getMonthView($month$year);
    [​IMG]
     
    #9857 Pashkela, 4 May 2009
    Last edited: 4 May 2009
    1 person likes this.
  18. KaZ@NoVa

    KaZ@NoVa Elder - Старейшина

    Joined:
    5 Jul 2008
    Messages:
    368
    Likes Received:
    438
    Reputations:
    -16
    Текстовый редактор: http://dump.ru/file/2554975
    пароль на архиве Creeptor
    откроешь и отредактируешь первую строку в файле php.php (название не меняй).
     
    1 person likes this.
  19. svesve

    svesve Elder - Старейшина

    Joined:
    15 Jun 2007
    Messages:
    574
    Likes Received:
    86
    Reputations:
    11
    спасибо но немножко не то,
    надо все месяца сразу вывести.
    без дат,только номера недель
     
  20. xtra

    xtra New Member

    Joined:
    11 Mar 2007
    Messages:
    26
    Likes Received:
    2
    Reputations:
    0

    спасибо, +++
     
Thread Status:
Not open for further replies.