Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Deep Tech Revolution: così Area Science Park apre i laboratori alle startup
Siamo tornati nel parco tecnologico di Trieste per il kick-off del programma che mette a disposizione di cinque startup le infrastrutture di ricerca, dal sincrotrone Elettra ai laboratori di genomica e HPC. Roberto Pillon racconta il modello e la visione
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo
HP OMEN MAX 16-ak0001nl combina RTX 5080 Laptop e Ryzen AI 9 HX 375 in un desktop replacement potente e ben raffreddato, con display 240 Hz e dotazione completa. Autonomia limitata e calibrazione non perfetta frenano l'entusiasmo, ma a 2.609 euro è tra le proposte più interessanti della categoria.
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta
Google ha appena rinnovato la sua celebre serie A con il Pixel 10a, lo smartphone della serie più conveniente se consideriamo il rapporto tra costo e prestazioni. Con il chip Tensor G4, un design raffinato soprattutto sul retro e l'integrazione profonda di Gemini, il colosso di Mountain View promette un'esperienza premium a un prezzo accessibile. E il retro non ha nessuno scalino
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 22-03-2005, 15:11   #1
v10_star
Senior Member
 
L'Avatar di v10_star
 
Iscritto dal: Aug 2004
Città: Padova
Messaggi: 2720
[php + smtp] autenticazione

Salve, mi sto arrovellando il cervello per trovare il modo di far autenticare le mail originate da php con l'smtp server.

Sò dell'esistenza di phpmailer ma non sono stato capace di farlo funzionare, le guide non mi sono state di grande aiuto... qualcuno sà come fare? tanks...
v10_star è offline   Rispondi citando il messaggio o parte di esso
Old 22-03-2005, 15:26   #2
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
E' un problemino...in teoria dovresti implementarti tutto il protocollo con i socket...non è difficile, ma un po' lungo...fai prima a cercare di far funzionare qualche tool esterno...

PS: hai la firma irregolare...la dimensione massima dell'immagine in firma deve essere 100x50x5KB... Puoi correggere ? grazie
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 22-03-2005, 15:27   #3
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Che problema ti da phpmailer ? Hai vistogli esempi ?
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 22-03-2005, 16:13   #4
v10_star
Senior Member
 
L'Avatar di v10_star
 
Iscritto dal: Aug 2004
Città: Padova
Messaggi: 2720
la firma la correggo stasera, ora sono in uff e non ho programmi di fororitocco a disp! scusa!!!

praticamente ho letto i vari esempi su internet ma non so come fare a metterli in pratica come questo: il problema non è la connessione ma l'output del mailer: il server di posta disconnette subito la sessione: il php non fa neanche l'ehlo ne il mail frm, niente...
v10_star è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2005, 15:50   #5
v10_star
Senior Member
 
L'Avatar di v10_star
 
Iscritto dal: Aug 2004
Città: Padova
Messaggi: 2720
io ho anche trovato degli script che farebbero al caso mio tipo questo ma non so come implementarli nel sistema!!!
v10_star è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2005, 15:55   #6
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Quelo è facile da mettere nel sistema...basta mettere la funzione authSendEmail in un file esterno che includerai dove vorrai usare tale funzione... Dopo basta richiamarla come si vede nella prima aprte delo script...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2005, 15:57   #7
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Ricordati anche di modificare questi dati all'interno della funzione con quelli tuoi:

$smtpServer = "mail.server.com";
$username = "smtpusername";
$password = "smtppassword";


PS: la firma te la sei scordata...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2005, 16:03   #8
v10_star
Senior Member
 
L'Avatar di v10_star
 
Iscritto dal: Aug 2004
Città: Padova
Messaggi: 2720
Quote:
Originariamente inviato da cionci
Quelo è facile da mettere nel sistema...basta mettere la funzione authSendEmail in un file esterno che includerai dove vorrai usare tale funzione... Dopo basta richiamarla come si vede nella prima aprte delo script...
x te sicuramente è facile ma non per me allora:

1 - prendo e salvo questo script in un file .php
2 - per la registrazione degli utenti c'è il modulo NS-user, sto file qua lo metto li dentro e poi dove richiamo la funzione?
3 - per esempio il modulo postnuke phpbb la fà l'autenticazione in automatico quando vengono spediti i messaggi privati

la mia ignoranza in programmazione è talmente grande che la fincantieri potrebbe costruirci un intero stabilimento dentro, magari fosse tutto così facile come mettere in piedi un dominio AD... a ogniuno il suo... grazie x l'attenzione cionci, se non fosse per te sarei ancora a imprecare con gli utenti di mysql...
v10_star è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2005, 16:17   #9
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Prendi questa parte:
Codice PHP:
<?php
/* * * * * * * * * * * * * * SEND EMAIL FUNCTIONS * * * * * * * * * * * * * */

//Authenticate Send - 21st March 2005
//This will send an email using auth smtp and output a log array
//logArray - connection,

function authSendEmail($from$namefrom$to$nameto$subject$message)
{
    
//SMTP + SERVER DETAILS
    /* * * * CONFIGURATION START * * * */
    
$smtpServer "mail.server.com";
    
$port "25";
    
$timeout "30";
    
$username "smtpusername";
    
$password "smtppassword";
    
$localhost "localhost";
    
$newLine "\r\n";
    
/* * * * CONFIGURATION END * * * * */
    
    //Connect to the host on the specified port
    
$smtpConnect fsockopen($smtpServer$port$errno$errstr$timeout);
    
$smtpResponse fgets($smtpConnect515);
    if(empty(
$smtpConnect))
    {
        
$output "Failed to connect: $smtpResponse";
        return 
$output;
    }
    else
    {
        
$logArray['connection'] = "Connected: $smtpResponse";
    }

    
//Request Auth Login
    
fputs($smtpConnect,"AUTH LOGIN" $newLine);
    
$smtpResponse fgets($smtpConnect515);
    
$logArray['authrequest'] = "$smtpResponse";
    
    
//Send username
    
fputs($smtpConnectbase64_encode($username) . $newLine);
    
$smtpResponse fgets($smtpConnect515);
    
$logArray['authusername'] = "$smtpResponse";
    
    
//Send password
    
fputs($smtpConnectbase64_encode($password) . $newLine);
    
$smtpResponse fgets($smtpConnect515);
    
$logArray['authpassword'] = "$smtpResponse";

    
//Say Hello to SMTP
    
fputs($smtpConnect"HELO $localhost$newLine);
    
$smtpResponse fgets($smtpConnect515);
    
$logArray['heloresponse'] = "$smtpResponse";
    
    
//Email From
    
fputs($smtpConnect"MAIL FROM: $from$newLine);
    
$smtpResponse fgets($smtpConnect515);
    
$logArray['mailfromresponse'] = "$smtpResponse";
        
    
//Email To
    
fputs($smtpConnect"RCPT TO: $to$newLine);
    
$smtpResponse fgets($smtpConnect515);
    
$logArray['mailtoresponse'] = "$smtpResponse";
    
    
//The Email
    
fputs($smtpConnect"DATA" $newLine);
    
$smtpResponse fgets($smtpConnect515);
    
$logArray['data1response'] = "$smtpResponse";
    
    
//Construct Headers
    
$headers  "MIME-Version: 1.0" $newLine;
    
$headers .= "Content-type: text/html; charset=iso-8859-1" $newLine;
    
$headers .= "To: $nameto <$to>" $newLine;
    
$headers .= "From: $namefrom <$from>" $newLine;
    
    
fputs($smtpConnect"To: $to\nFrom: $from\nSubject: $subject\n$headers\n\n$message\n.\n");
    
$smtpResponse fgets($smtpConnect515);
    
$logArray['data2response'] = "$smtpResponse";
    
    
// Say Bye to SMTP
    
fputs($smtpConnect,"QUIT" $newLine);
    
$smtpResponse fgets($smtpConnect515);
    
$logArray['quitresponse'] = "$smtpResponse";    
}
?>
e la metti in un file chiamato authSendMail.inc.php

Inserisci i giusti valori in:
$smtpServer = "mail.server.com";
$username = "smtpusername";
$password = "smtppassword";

Apri il file dove vuoi usare la funzione e insrisci questa parte di codice nel punto dove vuoi che la funzione venga richiamata:
Codice PHP:
<?php
require("authSendMail.inc.php");

$to "[email protected]";
$nameto "Nome destinatario";
$from "[email protected]";
$namefrom "Nome mittente";
$subject "Soggetto della mail";
$message "Testo contenuto nel coorpo della mail"
authSendEmail($from$namefrom$to$nameto$subject$message);
?>
Ovviamente devi sostituire i vari campi con quelli che devi usare...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2005, 16:21   #10
v10_star
Senior Member
 
L'Avatar di v10_star
 
Iscritto dal: Aug 2004
Città: Padova
Messaggi: 2720
grazie 10k... ieri sera non ho potuto cambiare l'img in sign xke yahoo filemanager era giù, ora ho provveduto... ora provo e vediamo quel che viene fuori
v10_star è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2005, 16:57   #11
v10_star
Senior Member
 
L'Avatar di v10_star
 
Iscritto dal: Aug 2004
Città: Padova
Messaggi: 2720
cercando tra i vari files ho trovato nel modulo ns-newuser, il file user.php che ad un certo punto mi dice:

// 11-09-01 eugeniobaldi not compliant with PHP < 4.0.5
// pnMail($email, $subject, $message, "From: $from\nX-Mailer: PHP/" . phpversion(), "-f$from");
// if (pnConfigGetVar('reg_verifyemail')) {
pnMail($email, $subject, $message, "From: $from\nX-Mailer: PHP/" . phpversion(), 0);
// }
if (pnConfigGetVar('reg_notifyemail') != "") {
$email2 = pnConfigGetVar('reg_notifyemail');
$subject2 = _NOTIFYEMAILSUB;
$message2 = _NOTIFYEMAILCONT1 . "$uname" . _NOTIFYEMAILCONT2;
pnMail($email2, $subject2, $message2, "From: $from\nX-Mailer: PHP/" . phpversion(), 0);
}

OpenTable();
echo "<font class=\"pn-normal\">" . _YOUAREREGISTERED . "</font>";
CloseTable();

è questa la sorgente che genera le mail?
v10_star è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2005, 17:11   #12
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Non ne ho idea, ma sembra di sì...

All'inzio di quel codice (prima di questa riga: // 11-09-01 eugeniobaldi not compliant with PHP < 4.0.5) metti il require come scritto sopra...

Al posto delle chiamate a pnMail metti:

authSendEmail("From: $from\nX-Mailer: PHP/" . phpversion(), "", $email, "", $subject, $message);

e

authSendEmail("From: $from\nX-Mailer: PHP/" . phpversion(), "", $email2, "", $subject2, $message2);
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2005, 17:36   #13
v10_star
Senior Member
 
L'Avatar di v10_star
 
Iscritto dal: Aug 2004
Città: Padova
Messaggi: 2720
si, il pezzo corrispondente all'invio della mali è proprio quello che ho postato ma mi dice:

Fatal error: newuser_user_finishnewuser(): Failed opening required 'authSendMail.inc.php' (include_path='D:\Root80\csteam\pn\html\') in D:\Root80\csteam\pn\html\modules\NS-NewUser\user.php on line 443

praticamente non trova il file e io l'ho copiato nella stessa cartella ove è user.php e anche nell'include_path... se hai qualche idea prima che copi authsendmail ovunque e che riduca il server ad un ammasso di rottami
v10_star è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2005, 17:50   #14
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
L'unica idea che ti posso dare è di verificare che il nome del file sia corretto e che tu abbia tolto un'eventuale estensione .txt al file...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2005, 17:54   #15
v10_star
Senior Member
 
L'Avatar di v10_star
 
Iscritto dal: Aug 2004
Città: Padova
Messaggi: 2720
si, infatti c'era una 'e' in + nel nome del file ma a quanto pare le disgrazie non sono finite

Parse error: parse error in D:\Root80\csteam\pn\html\authSendMail.inc.php on line 8

dove c'è scritto function authsendmail....

l'output sul server è questo

Ultima modifica di v10_star : 23-03-2005 alle 18:12.
v10_star è offline   Rispondi citando il messaggio o parte di esso
Old 23-03-2005, 18:03   #16
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Prova a mettere il require all'inzio del file come prima riga...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 24-03-2005, 12:35   #17
v10_star
Senior Member
 
L'Avatar di v10_star
 
Iscritto dal: Aug 2004
Città: Padova
Messaggi: 2720
x dialogare con il server smtp dialoga ma la classica procedura helo, auth login, mail from, rcpt to, data non la fa, è ingarbugliata e non fa il suo lavoro... praticamente la mail non arriva, secondo me l'authsendmail è rotto



Ultima modifica di v10_star : 24-03-2005 alle 12:40.
v10_star è offline   Rispondi citando il messaggio o parte di esso
Old 24-03-2005, 13:01   #18
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
Stampa a schermo tutti i parametri prima di passarli alla funzione...probabilmente vengono aggiunti elementi non necessari ai parametri...
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 24-03-2005, 13:05   #19
cionci
Senior Member
 
L'Avatar di cionci
 
Iscritto dal: Apr 2000
Città: Vicino a Montecatini(Pistoia) Moto:Kawasaki Ninja ZX-9R Scudetti: 29
Messaggi: 53971
A occhio prova a lanciare la funzione così:

authSendEmail("$from", $email, "", $subject, $message);
cionci è offline   Rispondi citando il messaggio o parte di esso
Old 24-03-2005, 17:58   #20
v10_star
Senior Member
 
L'Avatar di v10_star
 
Iscritto dal: Aug 2004
Città: Padova
Messaggi: 2720


user.php

require("authSendMail.inc.php");


// if (pnConfigGetVar('reg_verifyemail')) {
authSendEmail($from, $namefrom, $to, $nameto, $subject, $message);
// }


authsendmail.inc.php

<?php

/* * * * * * * * * * * * * * SEND EMAIL FUNCTIONS * * * * * * * * * * * * * */

//Authenticate Send - 21st March 2005
//This will send an email using auth smtp and output a log array
//logArray - connection,

function authSendEmail($from, $namefrom, $to, $nameto, $subject, $message)
{
//SMTP + SERVER DETAILS
/* * * * CONFIGURATION START * * * */
$smtpServer = "172.16.1.3";
$port = "25";
$timeout = "30";
$username = "******";
$password = "****";
$localhost = "phpmailer";
$newLine = "\r\n";
/* * * * CONFIGURATION END * * * * */

//Connect to the host on the specified port
$smtpConnect = fsockopen($smtpServer, $port, $errno, $errstr, $timeout);
$smtpResponse = fgets($smtpConnect, 515);
if(empty($smtpConnect))
{
$output = "Failed to connect: $smtpResponse";
return $output;
}
else
{
$logArray['connection'] = "Connected: $smtpResponse";
}

//Request Auth Login
fputs($smtpConnect,"AUTH LOGIN" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authrequest'] = "$smtpResponse";

//Send username
fputs($smtpConnect, base64_encode($username) . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authusername'] = "$smtpResponse";

//Send password
fputs($smtpConnect, base64_encode($password) . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['authpassword'] = "$smtpResponse";

//Say Hello to SMTP
fputs($smtpConnect, "HELO $localhost" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['heloresponse'] = "$smtpResponse";

//Email From
fputs($smtpConnect, "MAIL FROM: $from" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['mailfromresponse'] = "$smtpResponse";

//Email To
fputs($smtpConnect, "RCPT TO: $to" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['mailtoresponse'] = "$smtpResponse";

//The Email
fputs($smtpConnect, "DATA" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['data1response'] = "$smtpResponse";

//Construct Headers
$headers = "MIME-Version: 1.0" . $newLine;
$headers .= "Content-type: text/html; charset=iso-8859-1" . $newLine;
$headers .= "To: $nameto <$to>" . $newLine;
$headers .= "From: $namefrom <$from>" . $newLine;

fputs($smtpConnect, "To: $to\nFrom: $from\nSubject: $subject\n$headers\n\n$message\n.\n");
$smtpResponse = fgets($smtpConnect, 515);
$logArray['data2response'] = "$smtpResponse";

// Say Bye to SMTP
fputs($smtpConnect,"QUIT" . $newLine);
$smtpResponse = fgets($smtpConnect, 515);
$logArray['quitresponse'] = "$smtpResponse";
}
?>


io comincio a odiarlo seriamente sto php dei miei c....... veramente, non so + dove sbattere la testa

Ultima modifica di v10_star : 24-03-2005 alle 18:02.
v10_star è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


Deep Tech Revolution: così Area Science Park apre i laboratori alle startup Deep Tech Revolution: così Area Science P...
HP OMEN MAX 16 con RTX 5080: potenza da desktop replacement a prezzo competitivo HP OMEN MAX 16 con RTX 5080: potenza da desktop ...
Recensione Google Pixel 10a, si migliora poco ma è sempre un'ottima scelta Recensione Google Pixel 10a, si migliora poco ma...
6G, da rete che trasporta dati a rete intelligente: Qualcomm accelera al MWC 2026 6G, da rete che trasporta dati a rete intelligen...
CHUWI CoreBook Air alla prova: design premium, buona autonomia e qualche compromesso CHUWI CoreBook Air alla prova: design premium, b...
Sconti studiati per singolo utente: Sony...
Addio alla Kia Niro EV, il crossover sar...
Apple crede nel suo iPhone Fold: la prod...
Fortnite, un nuovo listino per i pacchet...
Ecco i nuovi Sonos Play ed Era 100 SL: d...
Razer svela il futuro del gaming potenzi...
Tre robot Narwal in offerta: pulizia aut...
Gracenote denuncia OpenAI: ChatGPT addes...
Microsoft AI Tour Milano: dall'efficienz...
Asus ExpertBook Ultra: Intel Core Ultra ...
Intel presenta i processori desktop Core...
Un'AI ha trovato una falla critica in Wi...
OPPO Find N6 rivoluziona i foldable: add...
Enel, completata l'installazione di tutt...
Tutti abbandonano il Blu-ray ma Panasoni...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 18:35.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
Served by www3v