Visualizzazione dei risultati da 1 a 6 su 6

Discussione: leggere e inviare mail

  1. #1

    leggere e inviare mail

    Salve popolo di PHPisti
    sono qua a disturbarbi con questo problema: ho inviato con outlook un testo con scritto "prova prova prova" e oggetto "Si" a una casella email X.
    Sto cercando di leggere questo messaggio dal browser e di spedirlo ad una seconda casella email attraverso questo scrippettino:

    <?php
    $host='{miosito.it/pop3:110}INBOX';
    $user='miacasella@miosito.it';
    $pass='miapass';
    $from='miacasella@miosito.it';
    $mail=@imap_open($host,$user,$pass) or die ("Can't connect: " . imap_last_error());
    $number='1';
    echo imap_body($mail,$number);
    $message=imap_body($mail,$number);
    imap_mail('miacasella2@miosito.it','Si',$message," From: $from");
    imap_close($mail);
    ?>

    il problema è che quando apro il browser ed eseguo lo scrippete visualizzo questo:

    This is a multi-part message in MIME format. ------=_NextPart_000_0006_01C95301.5832B280 Content-Type: text/plain; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable prova prova prova ------=_NextPart_000_0006_01C95301.5832B280 Content-Type: text/html; charset="iso-8859-1" Content-Transfer-Encoding: quoted-printable
    prova prova = prova
    ------=_NextPart_000_0006_01C95301.5832B280--

    che poi è anche quello che mi viene spedito alla seconda casella letta con outlook.
    Mi sto facendo una testa enorme a leggere le rfc ma non ci capisco nulla.
    Se mi date una mano a capire la situazione vi ringrazio.
    Saluto tutti.

  2. #2
    Il problema è che tu stai inviano solo il body, senza gli header che sono necessari per permettere al client di interpretare il messaggio multipart.

    Dai una occhiata qui:

    http://www.php.net/imap_headerinfo

  3. #3
    Utente di HTML.it
    Registrato dal
    May 2006
    Messaggi
    442
    ciao,

    non ti assicuro niente ma tra le altre variabili prova a metterli anche queste

    $messaggio1= 'MIME-Version: 1.0\r\n';
    $messaggio2= 'Content-type: text/html; charset=iso-8859-1\r\n';

    probabilmente il tuo messaggio d'errore puo dipendere che non specifichi come il programma di posta deve decodificare i dati che gli invii
    di sicuro aggiungi queste due righe poi vedi

  4. #4
    Allora... ho provato a inserire gli header, lo scrippete è diventato così:

    <?php
    $host='{miosito/pop3:110}INBOX'; //Host to connect
    $user='miamail@miosito.it';
    $pass='miapass';
    $from='miamail@miosito.it'; //Mail to send from
    $mail=@imap_open($host,$user,$pass) or die ("Can't connect: " . imap_last_error());
    $number='1';
    $header=imap_headerinfo($mail,$number);
    echo imap_body($mail,$number);
    $message=imap_body($mail,$number);
    if (@imap_mail('miamail@miodito.it','Si', $message, $header, "From: $from"));
    else echo 'invio non riuscito' ;
    imap_close($mail);
    ?>

    però nonostante ci sia un "if" con la risposta "invio non riuscito" se la mail non viene inviata, lo script non invia le mail dov'è lo sbaglio? sigh...
    poi vorrei sapere perché "echo imap_body($mail,$number);" mi visualizza su explorer quella serie di caratteri che ho postato sopra :-(

  5. #5

  6. #6
    Uff...
    ho provato con lo script ufficiale di www.php.net che si può trovare qui:
    http://it.php.net/manual/it/ref.imap.php
    ma i problemi sono gli stessi :berto:
    ora io mi chiedo, sarà Aruba (dove ho il mio sito) che non funzia a dovere? oppure anche il sito ufficiale di php fa errori?
    Fatemi sapere... pls

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.