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

    errore HTTP_POST_VARS not set

    CIAO, qualcuno mi aiuta?
    Ho utilizzato più volte, con successo uno script PHP scaricato da html.it
    a questo indirizzo
    http://php.html.it/script/vedi/1216/...cessor-script/

    per trasmettere via email i valori inseriti in un form.
    Adesso su un nuovo sito, dopo aver dato invia, invece di rimandare alla pagina di ringraziamento e trasmettere i dati via email, si blocca e segnala questo errore
    HTTP_POST_VARS not set - you may need to enable track_vars!

    questa è la parte di codice che fa "segnalare l'errore":

    /***************************************
    ** Check for post vars. Die if not set.
    ***************************************/
    if(isset($HTTP_POST_VARS) == FALSE) die('HTTP_POST_VARS not set - you may need to enable track_vars!'); else $postvars = $HTTP_POST_VARS;

    Non so cosa è track_vars!
    Dove devo abilitare e come perchè funzioni?
    Ciao e grazie
    Simonflag

  2. #2
    Utente di HTML.it L'avatar di r1cky`
    Registrato dal
    Feb 2007
    Messaggi
    432
    Cosa è track_vars! e dove devo abilitare !!
    è roba vecchia comunque l'abilitazionbe è dal php.ini

    Prova a modificare

    Codice PHP:
    if(isset($HTTP_POST_VARS) == FALSE) die('HTTP_POST_VARS not set - you may need to enable track_vars!'); else $postvars $HTTP_POST_VARS
    in

    Codice PHP:
    $postvars $POST

  3. #3
    Originariamente inviato da r1cky`
    è roba vecchia comunque l'abilitazionbe è dal php.ini

    Prova a modificare

    Codice PHP:
    if(isset($HTTP_POST_VARS) == FALSE) die('HTTP_POST_VARS not set - you may need to enable track_vars!'); else $postvars $HTTP_POST_VARS
    in

    Codice PHP:
    $postvars $POST
    Grazie Ricky!
    L'ho fatto e ora l'invio funziona!
    C'è ancora qualche problema: nel redirect alla pagina ringraziamento
    segnala questo errore:

    Warning: Variable passed to each() is not an array or object in D:\torinoin.com\torinoin.com\formcontact.php on line 474

    relativo alla parte seguente dello script

    $message = array();
    $message_values = array();
    $num_attachments = 0;

    while(list($key,$value) = each($postvars)){
    check_required($key, $value);
    if((int)phpversion() < 4) if(file_upload_php3($key,$value) == TRUE) continue;
    main($key, $value, $message, $message_values);
    }

    if((int)phpversion() >= 4 AND isset($HTTP_POST_FILES) AND is_array($HTTP_POST_FILES)) file_upload_php4($HTTP_POST_FILES);

    Sai come posso correggere? Grazie e ciao
    Simonflag

  4. #4
    Utente di HTML.it L'avatar di r1cky`
    Registrato dal
    Feb 2007
    Messaggi
    432
    Uhm allora forse il codice che ti ho suggerito non va proprio bene, perchè a quel punto la variabile $postvars dovrebbe essere un array...
    Eventualmente non ti conviene cercare se qualcuno ha adattato lo script a versioni più aggiornate di php?

    Comunque dovresti vedre nel php.ini a cosa è impostato l'attributo "register_long_arrays", per funzionare dovrebbe essere su "On", anche se per essere corretti nello script andrebbero sostituiti tutti i riferimenti a $HTTP_*_VARS con i relativi $_POST, $_GET, ecc ecc

    edit:

    Ti ho suggerito sbagliato, devi fare $postvars = $_POST, avevo dimenticato il _

  5. #5
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    3,709
    ma intendiamo $postvars = $_POST (con l'underscore)? E in questo caso comunque la variabile sarebbe un array in effetti.

  6. #6
    Mi correggo ... con il codice suggerito da Ricki dal form compilato invia una mail ma che non allega i dati inseriti.
    Spero ci sia qualche altro suggerimento.
    Io sono molto inesperta.
    Grazie
    Simonflag

  7. #7
    Utente di HTML.it L'avatar di r1cky`
    Registrato dal
    Feb 2007
    Messaggi
    432
    Ti ribadisco che devi correggere quando ti ho suggerito nella prima risposta, inserendo un underscore

    Codice PHP:
    $postvars $_POST 
    Poi sinceramente non conosco com'è la funzione file_upload_php4, ma credo sia necessario anche questo cambiamento....

    Codice PHP:
    if((int)phpversion() >= AND isset($_FILES) AND is_array($_FILES)) 
    file_upload_php4($_FILES); 

  8. #8
    Grazie per i suggerimenti, ma pur apportandoli non sono serviti.
    Ho risolto in maniera provvisoria: nessun cambiamento.
    Tutte le pagine caricate in un altro spazio FTP funzionano perfettamente.
    Ho bypassato con un redirect, giusto per la compilazione dei form e il loro reinvio.
    Ciao e ancora grazie.
    Simonflag

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.