Ir para conteúdo

Arquivado

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

maurolucio

[RESOLVIDO] strcmp();

Recommended Posts

Salve, salve galera.Estou com um problema de lascar.Eu busco a data do banco de dados e com o seu valor eu preencho um select

//converter a data do mysql para o padrão brasileiro com a função explode$data = $row_rs_agenda['data']; $nova_data=explode("-",$data); //$nova_data=novo array q será criado //$data=variável onde a data tinha o formato antigo //"-"=separador //depois basta você juntar o array na ordem desejada! $data1=$nova_data[2]."/".$nova_data[1]."/".$nova_data[0]; $dia=$nova_data[2];$mes=$nova_data[1];$ano=$nova_data[0];

Depois de ter os valores do mes, ano e dia eu uso a função strcmp(); para selecionar o valor no select

<option value="01" <?php if (!(strcmp(01, $mes))) {echo "selected=\"selected\"";} ?>>01</option><option value="02" <?php if (!(strcmp(02, $mes))) {echo "selected=\"selected\"";} ?>>02</option>.....<option value="12" <?php if (!(strcmp(12, $mes))) {echo "selected=\"selected\"";} ?>>12</option>

Porém o select só vem selecionado se o valor for maior que 10, se for menor ele não selecionaEu já tentei ao invés de colocar 01 colocar apenas 1 e nada.Será que alguém poderia me ajudar?Abraço a todos

Compartilhar este post


Link para o post
Compartilhar em outros sites

qual a versao do PHP que você stah utilizando ?testei nas versões 5.1 e 4.1 e estah ok

<?php// ambos funcionam//$mes = 7;$mes = 07;?><select><?phpfor( $i = 1; $i < 13; $i++ ){ ?> <option value="<?php echo $i;?>" <?php if (!(strcmp($i, $mes))) {echo "selected=\"selected\"";} ?>><?php echo $i;?></option> <?php}?></select>

obs: verifique qual o valor real da variavel " $mes "

Compartilhar este post


Link para o post
Compartilhar em outros sites

Esta variável $mes é preenchida com o valor que vem do banco de dados

$nova_data=explode("-",$data); $mes=$nova_data[1];

então não há como o valor dela está errado, pois se dou echo nessa variável ele mostra o valor corretoo que acontece é o seguinte, com valores de 01 até 09 ele não seleciona o selectporém com valores acima 10 ele seleciona normalmente.o que você fez foi atribuir um valor a variável $mes, no meu caso esse valor é preenchido com o mês gerado pelo explode de uma data do Mysql.O mesmo acontece com a variável $dia

Compartilhar este post


Link para o post
Compartilhar em outros sites

maurolucioisso nao faz diferencatalvez seja alguma configuraçao do seu wervidor web, ou do php ou do banco de dados ou ateh mesmo o mime-type da página do scriptde qualquer modo, use a funcao intval() para converter pra inteiro e retirar os zeros à esquerda

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.