Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

leandroauler

[Resolvido] Erro em mktime()

Recommended Posts

Fala galera..

 

To comm o seguinte erro nesse codigo:

if (isset ($_REQUEST['enquete'])) {

	//seleciona todas as tabelas do banco de dados do sistema de enquete para fazer uma verificação geral e exibi uma enquete específica
	$resultado = mysql_query ("SELECT enqueteid, titulo, inicio, expira, voto, votando, resultados, grafico, resultadosvotos, cookies FROM enquetes WHERE status='on' AND enqueteid='$_REQUEST[enquete]'");
	
//caso cotrário, se não especificar nenhuma enquete, seleciona os dados do BD e exibi em ordem decrescente a última enquete publicada
} else {

	$resultado = mysql_query ("SELECT enqueteid, titulo, inicio, expira, voto, votando, resultados, grafico, resultadosvotos, cookies FROM enquetes WHERE status='on' ORDER BY enqueteid DESC LIMIT 1");
	
}

//é feita a definição que a variável totalenquetes (é igual) a conexão com banco de dados para exibir $resultado
$totalenquetes = mysql_num_rows ($resultado);

//se $totalenquetes for maior que 0
if ($totalenquetes > 0) {

	//exibi a variável enquete, que irá selecionar os dados do banco de dados ($resultado)
	$enquetes = mysql_fetch_array ($resultado);

	//a variável whatenquete é definida igual a $enquetes['enqueteid']
	$whatenquete = $enquetes['enqueteid'];

	//a variável titulo é definida igual a $enquetes['titulo']
	$titulo = $enquetes['titulo'];
	
	// Calcula a data em que a enquete expira
	//utiliza a lista para exibir dias, meses e anos e o comando explode para "quebrar" estas variáveis e exibir data formatada: dia/mes/ano
	list ($dayx, $monthx, $yearx) = explode ("/", $enquetes['expira']);
	$now = mktime (0, 0, 0, date ("m"), date ("d"), date ("Y"));
	$expire = mktime (0, 0, 0, $monthx, $dayx, $yearx);
	
	//se o valor definido em $expire for menor ou igual ao valor definido em $now (hoje) então significa que já está expirado.
	//exemplo: expira em 08/08/2006 e hoje é 05/10/2006, então a enquete está expirada, ou seja não está mais disponível pra votar, apenas pra visualizar resultados, isso é óbvio. =)
	if ($expire <= $now) {
	
		$expirado = "yes";

	//caso contrário, ainda não expirou
	} else {
	
		$expirado = "no";
		
	}
	
	// Se não estiver expirado, então calcula o início da enquete
/*1*/ if ($expirado == "no") {

		//utiliza a lista para exibir dias, meses e anos e o comando explode para "quebrar" estas variáveis e exibir data formatada: dia/mes/ano
		[b]list ($days, $months, $years) = explode ("/", $enquetes['starts']);
		LINHA 58 -> $starts = mktime (0, 0, 0, $days, $months, $years);[/b]

		//se a data de início da enquete for maior que o dia de hoje então a enqueta ainda não foi iniciada - exemplo: inicia em 05/10/2006 e hoje é 08/08/2006, então irá aguardar a data de início para ser publicada
		if ($starts > $now) {
	
			$iniciado = "no";

		//caso contrário, ou seja, se a data de início for menor ou igual a data de hoje, então exibirá a enquete
		} else {
	
			$iniciado = "yes";
		
		}
	//caso contrário (que retorna o 1º if) a enquete não foi iniciada
	} else {
	
		$iniciado = "no";
	
	}

PHP Warning: mktime() expects parameter 5 to be long, string given, na linha 58

 

Alguem sabe como posso resolver isso em localhost funciona mas na locaweb não..

 

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fala galera..

 

To comm o seguinte erro nesse codigo:

if (isset ($_REQUEST['enquete'])) {

	//seleciona todas as tabelas do banco de dados do sistema de enquete para fazer uma verificação geral e exibi uma enquete específica
	$resultado = mysql_query ("SELECT enqueteid, titulo, inicio, expira, voto, votando, resultados, grafico, resultadosvotos, cookies FROM enquetes WHERE status='on' AND enqueteid='$_REQUEST[enquete]'");
	
//caso cotrário, se não especificar nenhuma enquete, seleciona os dados do BD e exibi em ordem decrescente a última enquete publicada
} else {

	$resultado = mysql_query ("SELECT enqueteid, titulo, inicio, expira, voto, votando, resultados, grafico, resultadosvotos, cookies FROM enquetes WHERE status='on' ORDER BY enqueteid DESC LIMIT 1");
	
}

//é feita a definição que a variável totalenquetes (é igual) a conexão com banco de dados para exibir $resultado
$totalenquetes = mysql_num_rows ($resultado);

//se $totalenquetes for maior que 0
if ($totalenquetes > 0) {

	//exibi a variável enquete, que irá selecionar os dados do banco de dados ($resultado)
	$enquetes = mysql_fetch_array ($resultado);

	//a variável whatenquete é definida igual a $enquetes['enqueteid']
	$whatenquete = $enquetes['enqueteid'];

	//a variável titulo é definida igual a $enquetes['titulo']
	$titulo = $enquetes['titulo'];
	
	// Calcula a data em que a enquete expira
	//utiliza a lista para exibir dias, meses e anos e o comando explode para "quebrar" estas variáveis e exibir data formatada: dia/mes/ano
	list ($dayx, $monthx, $yearx) = explode ("/", $enquetes['expira']);
	$now = mktime (0, 0, 0, date ("m"), date ("d"), date ("Y"));
	$expire = mktime (0, 0, 0, $monthx, $dayx, $yearx);
	
	//se o valor definido em $expire for menor ou igual ao valor definido em $now (hoje) então significa que já está expirado.
	//exemplo: expira em 08/08/2006 e hoje é 05/10/2006, então a enquete está expirada, ou seja não está mais disponível pra votar, apenas pra visualizar resultados, isso é óbvio. =)
	if ($expire <= $now) {
	
		$expirado = "yes";

	//caso contrário, ainda não expirou
	} else {
	
		$expirado = "no";
		
	}
	
	// Se não estiver expirado, então calcula o início da enquete
/*1*/ if ($expirado == "no") {

		//utiliza a lista para exibir dias, meses e anos e o comando explode para "quebrar" estas variáveis e exibir data formatada: dia/mes/ano
		[b]list ($days, $months, $years) = explode ("/", $enquetes['starts']);
		LINHA 58 -> $starts = mktime (0, 0, 0, $days, $months, $years);[/b]

		//se a data de início da enquete for maior que o dia de hoje então a enqueta ainda não foi iniciada - exemplo: inicia em 05/10/2006 e hoje é 08/08/2006, então irá aguardar a data de início para ser publicada
		if ($starts > $now) {
	
			$iniciado = "no";

		//caso contrário, ou seja, se a data de início for menor ou igual a data de hoje, então exibirá a enquete
		} else {
	
			$iniciado = "yes";
		
		}
	//caso contrário (que retorna o 1º if) a enquete não foi iniciada
	} else {
	
		$iniciado = "no";
	
	}

PHP Warning: mktime() expects parameter 5 to be long, string given, na linha 58

 

Alguem sabe como posso resolver isso em localhost funciona mas na locaweb não..

 

Valeu

Galera,

 

Já resolvi o problema

 

Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.