Visualizzazione dei risultati da 1 a 5 su 5
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    12

    Fatal error: Call to undefined method PHPMailer::Subject()

    Ciao a tutti,

    premetto che non sono un esperto di PHP.
    Ho una pagina di form html e per l'invio dei dati via e-mail sto utilizzando il seguente script PHP MAILER
    Codice PHP:
    <?php
      
    // richiamo la funzione phpmailer
    require_once('class.phpmailer.php');
    // recupero i dati dai campi del form dichiarando le variabili     
    $to 'marco@ilmioindirizzoemail';
    $from $_POST['mail1'];
    $subject $_POST['DataEvento'];
    $ragioneso $_POST['ragionesso'];
    $viaso $_POST['viaso'];
    $civicoso $_POST['civicoso'];
    $capso $_POST['capso'];
    $cittaso $_POST['cittaso'];
    $provinciaso $_POST['provinciaso'];
    $pivaso $_POST['pivaso'];
    $cfso $_POST['cfso'];
    $bodyh "<html>
    <head></head><body><font face=verdana size=4 color=000040>Dati Societ�</font><br><font face=arial size=2 color=000040>Ragione sociale:</font><font face=arial size=2 color=000080>
    $ragioneso</font><br><font face=arial size=2 color=000040>Via:</font><font face=arial size=2 color=000080>$viaso</font><br><font face=arial size=2 color=000040>Civico:</font><font face=arial size=2 color=000080>$civicoso</font><br><font face=arial size=2 color=000040>CAP:</font><font face=arial size=2 color=000080>$capso</font><br><font face=arial size=2 color=000040>Citta':</font><font face=arial size=2 color=000080>$cittaso</font><br><font face=arial size=2 color=000040>Provincia:</font><font face=arial size=2 color=000080>$provinciaso</font><br><font face=arial size=2 color=000040>Partita IVA:</font><font face=arial size=2 color=000080>$pivaso</font><br><font face=arial size=2 color=000040>Codice Fiscale:</font><font face=arial size=2 color=000080>$cfso</font><br>

    // Intestazioni per il corpo del messaggio
    $header .= "MIME-Version1.0\n";
    $header .= "Content-Typetext/htmlcharset=\"iso-8859-1\"\n";
    $header .= "Content-Transfer-Encoding: 7bit\n\n";

        require 
    'PHPMailerAutoload.php';
    $mail = new PHPMailer;

    $mail->IsSMTP();

    try {
    $mail->Host "smtp.server.com";  // Server SMTP da utilizzare
    $mail->SMTPDebug 0;
    $mail->SMTPAuth true;
    $mail->Port 25;
    $mail->Username "inviodati";  // Username SMTP
    $mail->Password "Password";  // Password SMTP
    $mail->AddReplyTo($from$from);
    $mail->AddAddress($to);
    $mail->AddAddress($from);
    $mail->AddCC($from);
    $mail->SetFrom($from$from);
    $mail->AddReplyTo($from$from);
    $mail->Subject($subject$ragioneso);
    $mail->IsHTML(true);
    $mail->MsgHTML($bodyh);
    $mail->AltBody $body;
    $ris $mail->Send();
    } catch (
    phpmailerException $e) {
    echo 
    $e->errorMessage();
    } catch (
    Exception $e) {
    echo 
    $e->getMessage();
    }

    if(
    $ris) {
    echo 
    "<h2>Gentile cliente i tuoi dati sono stati inviati correttamente.</h2>";
    } else {
    echo 
    "<br /><br />Ritenta l�invio tornando alla pagina del modulo.";
    }

    ?>
    Vorrei che l'oggetto sia composto da più campi recuperati dal post ma utilizzando lo script, indicando nel campo $mail->Subject le due variabili $subject, $ragioneso, riscontro l'errore Fatal error: Call to undefined method PHPMailer::Subject()
    Come posso riuscire nell'intento?

    Infinite grazie a chiunque voglia darmi una mano
    Ultima modifica di Marcoplm; 20-11-2016 a 16:03

  2. #2
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Subject non è un metodo della classe. Prova: $Mail->Subject = $subject;
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  3. #3
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    12
    Ok così funziona ma se volessi comprendere più di una variabile nel campo $Mail->Subject come devo fare?
    Se volessi che l'oggetto sia formato dalla variabile $subject + $ragioneso cosa devo fare?
    Infatti io ho tentato con $mail->Subject($subject, $ragioneso); riscontrando l'errore nel titolo della discussione...

    Intanto grazie per l'interesse!

  4. #4
    Utente di HTML.it L'avatar di badaze
    Registrato dal
    Jun 2002
    residenza
    Lyon
    Messaggi
    5,372
    Quote Originariamente inviata da Marcoplm Visualizza il messaggio
    Ok così funziona ma se volessi comprendere più di una variabile nel campo $Mail->Subject come devo fare?
    Se volessi che l'oggetto sia formato dalla variabile $subject + $ragioneso cosa devo fare?
    Infatti io ho tentato con $mail->Subject($subject, $ragioneso); riscontrando l'errore nel titolo della discussione...

    Intanto grazie per l'interesse!
    Allora... Cosa devi fare ? E' semplice.
    1 - $mail->Subject = $subject . ' ' . $ragioneso;
    o
    2 - Ti prendi il sorgente della classe Php Mailer e ti scrivi un metodo che fa per te. Non c'è altra via. E' informatica. La classe non farà mai in quattro per farti piacere.
    Ridatemi i miei 1000 posts persi !!!!
    Non serve a nulla ottimizzare qualcosa che non funziona.
    Cerco il manuale dell'Olivetti LOGOS 80B - www.emmella.fr

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2014
    Messaggi
    12
    Grazie mille sono riuscito a risolvere con il metodo 1

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.