Visualizzazione dei risultati da 1 a 5 su 5

Discussione: invio mail dopo click

  1. #1
    Utente di HTML.it L'avatar di rinek
    Registrato dal
    Aug 2009
    Messaggi
    17

    aiuto su invio mail dopo click

    Ciao a tutti, ho approntato una soluzione (sicuramente errata) e dunque il mio problema è questo:
    vorrei che l'utente dopo il click su uno specifico link ricevesse una mail; così ho creato un file php che elabora ed invia la mail, e tutto funziona... il problema è che la mail viene inviata 2 volte, sia al click sul link, ma sia anche al caricamento della pagina dove è presente il link.

    il file di invio mail che ho creato (invitemail.php) e che viene richiamato dal link è questo:

    if(!isset($_GET[('Aggiungi '.("$members_username").' agli amici')])) {
    //Step 1 - Get Owner of Video's User ID
    $sql = "SELECT * FROM member_profile WHERE user_id = $member_id";
    $query = mysql_query($sql);
    $result = mysql_fetch_array($query);
    $mem_id = $result['user_id'];

    //Step 2 - Get video owners email address
    $sql = "SELECT * FROM member_profile WHERE user_id = $mem_id";
    $query = mysql_query($sql);
    $result = mysql_fetch_array($query);
    $mem_email = $result['email_address'];
    $mem_name = $result['user_name'];

    if (notification_preferences($mem_id, "friendsinvite") == true) {//check users preferences

    //send email --------resuable------------------------------------->>
    //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>
    $email_template = 'email_templates/invitemessage_internal2.htm';
    $subject = $config["email_invite"];
    $to = $mem_email;
    $from = $config['notifications_from_email'];

    //send email template to TBS for rendering of variable inside
    $template = $email_template;
    $inner_template1 = "templates/inner_email_compose.htm";//middle of page
    $inner_template2 = "";// bottom of page
    $TBS = new clsTinyButStrong;
    $TBS->NoErr = true;// no more error message displayed.
    $TBS->LoadTemplate("$template");
    $TBS->tbs_show(TBS_NOTHING);
    $message = $TBS->Source;

    //load postage.php
    include ('postage.php');
    //>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>
    }
    }
    Nel file php dove invece viene specificata la variabile del link ho inserito:
    $frnd = ('Aggiungi '.("$members_username").' agli amici');
    include_once ('invitemail.php');
    Come si può evitare che la mail parta anche al caricamento della pagina, invece che venga spedita solo al click del link?

    Grazie 1000 in anticipo!

  2. #2
    Utente di HTML.it L'avatar di r1cky`
    Registrato dal
    Feb 2007
    Messaggi
    432
    Non ho ben capito in questo codice:

    Codice PHP:
    $frnd = ('[url="invite.php?ref_uid=').("]Aggiungi '.("$members_username").' agli amici[/url]'); 
    a cosa servano tutte quelle parentesti tonde... io avrei scritto semplicemente così:

    Codice PHP:
    $frnd '[url="invite.php?ref_uid='.$member_id.'"]Aggiungi'.$members_username.'agli amici[/url]'
    Comunque l'errore non sta lì ma sta nell'isset.
    Prova a fare così:

    Codice PHP:
    if(isset($_GET['ref_uid'])) {
    ...


  3. #3
    Utente di HTML.it L'avatar di rinek
    Registrato dal
    Aug 2009
    Messaggi
    17
    Grazie per avermi risposto! Scusatemi ma sono alle prime armi... Si, effettivamente tutte quelle parentesi non servono a nulla. Cmq ora ho provato a modificare l' isset come consigliato, ma ora la mail non parte in nessuno dei due casi.

  4. #4
    Utente di HTML.it L'avatar di r1cky`
    Registrato dal
    Feb 2007
    Messaggi
    432
    Ok forse ho capito qual'è il tuo problema, hai fatto un po' di casino con i file

    Tu devi mettere il codice per inviare la mail nel file invite.php oppure rinominare invitemail.php in invite.php e dopo devi rimuovere quell'include che hai messo

  5. #5
    Utente di HTML.it L'avatar di rinek
    Registrato dal
    Aug 2009
    Messaggi
    17
    grazie infinite per il suggerimento, ho risolto

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 © 2024 vBulletin Solutions, Inc. All rights reserved.