Visualizzazione dei risultati da 1 a 2 su 2
  1. #1

    Problemi con FLASH e PHP per semplice form mail...

    Salve è la prima volta che posto qui una domanda.
    Ho realizzato una pagina contatti per un sito fatto tutto in flash. Ho utilizzato uno dei mie tanti form flash-php funzionanti che uso da sempre.
    Solo che in questo sito presente su spazio TOPHOST.it non funzionano. I tecnici di TOPHOST mi hanno scritto questo dopo aver analizzato il file php:

    Risposta del tecnico del Supporto di Primo Livello:
    Salve,
    il problema dello script è differente da quello indicato nell'email.

    Innanzitutto lo script non è compatibile con la direttiva register_globals
    (trova tutta la documentazione necessaria sul sito www.php.net).

    L'array HTTP_POST_VARS non esiste più nelle nuove versioni di PHP ed inoltre non
    è possibile richiamare le variabili passate in POST o GET direttamente con il
    nome ma bisogna far riferimento al relativo array superglobale.

    Le auguriamo buona giornata

    QUi sotto mi incollo cosa c'e' scritto dentro il file php visto che non posso allegarlo:
    <?
    function parse_form($array) {
    $reserved_keys[] = "onLoad";
    $reserved_keys[] = "contenitore";
    $reserved_keys[] = "titolo";

    $array=array_reverse($array,true);

    if (count ($array)) {
    while (list($key, $val) = each($array)) {
    $reserved_violation = 0;
    for ($ri=0; $ri<count($reserved_keys); $ri++) {
    if ($key == $reserved_keys[$ri]) {
    $reserved_violation = 1;
    }
    }

    if ($reserved_violation != 1) {
    if (is_array($val)) {
    for ($z=0;$z<count($val);$z++) {
    $content .= "$key: $val[$z]\n";
    }
    } else {
    $content .= "$key: $val\n";
    }
    }
    }
    }
    return $content;
    }

    $content = parse_form($HTTP_POST_VARS);

    if (($Email) || ($EMAIL)) {
    $Email = trim($Email);
    if ($EMAIL)
    $Email = trim($EMAIL);
    if (!eregi("^[_\.0-9a-z-]+@([0-9a-z][0-9a-z-]+\.)+[a-z]{2,3}$", $Email)) {
    echo "error=1";

    $EMAIL = $Email;
    } else {

    mail("djcaipiroska@hotmail.com", stripslashes($titolo), stripslashes($content), "From: $Email\r\nReply-To: $Email\r\nX-Mailer: DT_formmail");
    echo "success=1";
    }
    }
    exit;
    ?>

    Sareste così gentili da dirmi cosa dovrei modificare per farlo funzionare? se avete bisogno anche del file fla mandatemi la vostra mail e ve la spediro'.
    CONTO SU UN VOSTRO TEMPESTIVO AIUTO, è abbastanza urgente grazie.
    mickey

  2. #2
    Dovresti modificare questa riga:
    Codice PHP:
    $content parse_form($HTTP_POST_VARS); 
    in questa maniera:
    Codice PHP:
    $content parse_form($_POST['required']); 
    required potrebbe essere il nome di un campo nascosto che invia con value i valori di tutti i campi da riempire del form. Diventa un array che tu, per ogni suo elemento verifichi che non sia NULL, così sai se l'utente ha riempito interamente il form.

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.