Ваша реклама могла б бути тут!
1 млн переглядів на місяць!
Google Page Rank: 5

делей в РНР

🔴 12:26 Повітряна тривога в Харків.обл.
Статус: Offline
Реєстрація: 27.08.2005
Повідом.: 15561
  • 🔴 12:26 Повітряна тривога в Харків.обл.
  • #1
делей в РНР

имеется PHP скрипт отпраки почты с использованием sendmail написанный одним добрым человеком. Оговорюсь сразу- PHP я фактически не знаю, у меня другая специализация.

скрипт:

PHP:
<?php
	ini_set('track_errors', true); 
	ini_set('html_errors', false); 
	require_once('config.php');
?>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="https://www.w3.org/1999/xhtml">
<head>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
    <title>Заебись</title>
</head>
<body>

<h1>Испослатель 2.0</h1>

<hr />     
<?php

$formWarnings = array();
$valid = false;
if (count($_POST) > 0) {
//Validate 
	if (@empty($_POST['subject'])) {
		 $formWarnings['subject'] = 'Где про скорые помощи, блять?';
	}	  	
	if (@empty($_POST['body'])) {
		 $formWarnings['body'] = 'Текст немного по-дебильному написан.';
	}
	
	if (count($formWarnings) > 0) {
		?>
		<p style="color: red; font-weight: bold;">Миша всё хуйня, давай по новой!</p>
		<?php
	}
	else {
		$valid = true; 
	}
}
	
if (!$valid) {
	?>
	<form method="post" action="<?php echo $_SERVER['SCRIPT_NAME']; ?>">
		<div>
			<strong>На тему:</strong>
			<input type="text" name="subject" style="width: 100%;" 
				value="<?php echo @HTMLEncode($_POST['subject']); ?>" />
			<?php 
			if (!empty($formWarnings['subject'])) {
				?>
				<div style="color: red;"><?php echo @HTMLEncode($formWarnings['subject']); ?></div>
				<?php	
			}
			?>
		</div>
		
		<div>
			<strong>Испослать:</strong><br />
			<textarea name="body" rows="20" style="width: 100%;"><?php echo @HTMLEncode($_POST['body']); ?></textarea>
			<?php 
			if (!empty($formWarnings['body'])) {
				?>
				<div style="color: red;"><?php echo @HTMLEncode($formWarnings['body']); ?></div>
				<?php	
			}
			?>
		</div>  
		
		<hr />  
		
		<div style="text-align: right;">
			<input type="submit" value="Сделать все заебись!" />
		</div>
	</form>

	<?php	
}
else {
	SpamThem($_POST['subject'], $_POST['body']);
	?>
	<p>
		Испослание завершено. <a href="<?php echo $_SERVER['SCRIPT_NAME']; ?>">Испослать исчо</a>.
	</p>
	<?php
}  
?>
</body> 
</html>


<?php

//-----------------------------------------------------------------------------
// Functions
//-----------------------------------------------------------------------------

function SpamThem($Subject, $Body)
{
	set_time_limit(0);
	ob_implicit_flush(true); 
	
	$rs = mysql_query('SELECT email FROM `login`');
	
	set_error_handler('mailErrorHandler');
	while ($rec = mysql_fetch_array($rs)) {
		$to = $rec[0];
		echo("Испосылаю {$to}... ");
		$result = @mail($to, $Subject, $Body, 
			"Content-Type: text/plain; charset=UTF-8");
		echo($result? 'OK.' : "дайте ему воды! {$php_errormsg}");
		echo("<br />\n");
	}	
	restore_error_handler();  
}
//-----------------------------------------------------------------------------   

function HTMLEncode($Text)
{
	return htmlentities($Text, ENT_QUOTES, 'utf-8');
}
//-----------------------------------------------------------------------------    

function mailErrorHandler($errno, $errstr, $errfile, $errline)
{
    return false;
}



Между отправками писем нужно встроить делей тк мейлсервер ругается и дропает письма.

Думаю в РНР ж есть чтото типа "sleep стопяцот" как в С#?
 
Останнє редагування:
  • 🔴 12:26 Повітряна тривога в Харків.обл.
  • #2
канешно есть
sleep(секунд);

можно было в гугле посмотреть
 
  • 🔴 12:26 Повітряна тривога в Харків.обл.
  • #3
канешно есть
sleep(секунд);

можно было в гугле посмотреть

именно секунды в скобках? не милисекунды?

Ткните меня пожалуйста носом куда там вставить делей. Жара, башка просто не варит, сижу на автопилоте х_х
 
  • 🔴 12:26 Повітряна тривога в Харків.обл.
  • #4
Код:
echo("Испосылаю {$to}... "); 
        $result = @mail($to, $Subject, $Body,  
            "Content-Type: text/plain; charset=UTF-8"); 
        echo($result? 'OK.' : "дайте ему воды! {$php_errormsg}"); 
        echo("<br />\n");
        [B]sleep(60);[/B]

Только в этом коде есть недоработка - не анализируется $result

Вот описание

sleep
(PHP 3, PHP 4 )

sleep -- Delay execution
Description
void sleep ( int seconds)


The sleep() function delays program execution for the given number of seconds.
 
Назад
Зверху Знизу