uncl0sed 0 Denunciar post Postado Julho 9, 2009 To começando no php, e tava fazendo uns testes, fazendo algo pra ir pegando o jeito... Mais me deparei com 1 erro... parte do código... <?php $emails = $_REQUEST["aenviar"]; $email = explode("\n",$emails); $i=0; while ($email[$i]) { // ESSA É A LINHA QUE DA ERRO! echo "$email[$i]<br>"; $i++; } ?> Ele retorna o $email do jeito que eu quero (1 por linha), mais em baixo ele retorna esse erro: EXEMPLO: email@mail.com email2@mail.com email3@mail.com Notice: Undefined offset: 3 in C:\Program Files\EasyPHP 2.0b1\www\q.php on line 9 Alguma luz? Compartilhar este post Link para o post Compartilhar em outros sites
JonatasFn 0 Denunciar post Postado Julho 9, 2009 Cara, já tive este mesmo problema eu um código meu. Comigo era problema no Array. Verifique o q está dentro do REQUEST, pois, se não me engano "Undefined offset: 3 " quer dizer q não existe nada na posição 3 do Array. E pelo q vejo não é pra ter nada mesmo. Pode ser q o Array está sendo criado vazio. Espero poder ter ajudado. Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Julho 9, 2009 E para fazer isto aqui o for é melhor. $emails = $_REQUEST["aenviar"]; $email = explode("\n",$emails); for ($i = 0; $i < count($email); $i++){ echo "$email[$i]<br>"; } Outra coisa, não use $_REQUEST, use $_POST ou $_GET. Referências http://br.php.net/count http://br.php.net/for http://br.php.net/manual/pt_BR/reserved.variables.get.php http://br.php.net/manual/pt_BR/reserved.variables.post.php Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
uncl0sed 0 Denunciar post Postado Julho 9, 2009 o "aenviar" é um textarea em html que eu fizz... e nele fica uma listinha de e-mails exemplo: email@mail.com email2@mail.com email3@mail.com Então eu guardo esses valores na variavel $emails e dps separo os emails em um array $email pra poder enviar email de 1 em 1 entedem? Pois se eu armazenar o valor em $emails e não seperar com o explode() eles vão ficar todos juntos. ;s Compartilhar este post Link para o post Compartilhar em outros sites
Matias Rezende 50 Denunciar post Postado Julho 9, 2009 Tá... ainda tá com dúvida??? Qual o problema??? Leu o material que eu indiquei? Tentou fazer como eu disse? Carlos Eduardo Compartilhar este post Link para o post Compartilhar em outros sites
uncl0sed 0 Denunciar post Postado Julho 10, 2009 Sim funcionou Carlos, porém só queria saber o motivo daquele erro no meu código! Ta tudo certo, queria entender ele... Mais tudo bem, ta resolvido, podem fechar o tópico. Compartilhar este post Link para o post Compartilhar em outros sites
William Bruno 1501 Denunciar post Postado Julho 10, 2009 O erro é pq ele tenta acessar uma posição que não existe no array.. no caso a posição 3. O teu array tem 3 posições: 0, 1 e 2.. então a 3 não existe.. e ele gera o erro, pois o laço tenta chegar nela. E isso acontece, pois a condição de 'parar' do while não está bem definida.. while(email[$i]).. Compartilhar este post Link para o post Compartilhar em outros sites