Pagina 1 di 4 1 2 3 ... ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 32
  1. #1
    Utente bannato
    Registrato dal
    Dec 2010
    Messaggi
    297

    problema header dopo query

    allora faccio una semplice query di inserimento dati.....dopo che li inserisce
    devi fare un header ad un altra pagina

    ma non funziona non capisco perchè, mi inserisce i dati ma non mi fa il redirect
    vi posto una porzione di codice perchè è troppo lungo.....anche se io credo che il problema sia altrove......
    ci tengo a specificare che lo stesso codice mi ha sempre funzionato


    forse ho messo qualche script in javascript o qualche altra cosa che mi annullano l'header

    Codice PHP:
    $insertSQL sprintf("INSERT INTO negozio (blavlalaldlglsdg.php ecc )");
      
    mysql_select_db($database_connessione$connessione);
      
    $Result1 mysql_query($insertSQL$connessione) or die(mysql_error());
      
    mysql_close();

    header("Location:blabla.php");



  2. #2
    Utente di HTML.it L'avatar di Grino
    Registrato dal
    Oct 2004
    Messaggi
    739
    L'unica cosa che mi viene in mente è che la funzione header() va invocata prime che sia prodotto dell'output... sia esso anche solo uno spazio bianco.

    ad esempio se nel tuo file hai la prima riga vuota perchè hai premuto un invio e poi hai iniziato con <?php... , stai producendo dell'output HTML che dal punto di vista del browser non produce nulla, ma dal punto di vista di PHP non ti permette di aggiungere ulteriori header all'output con la funzione header(), perchè gli header sono stati già inviati al browser non appena è iniziato l'output HTML.
    Siamo sempre troppo gelosi delle nostre grandi piccole opere! - Grino inedito.
    Lavori e Lavoretti

  3. #3
    Utente bannato
    Registrato dal
    Dec 2010
    Messaggi
    297
    ma io vorrei che inserisse i dati nel database prima, e poi redirecta ad un altra pagina.....non capisco perchè non va.....

  4. #4
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,591
    hai letto cosa ha scritto Grino?
    forse ho messo qualche script in javascript o qualche altra cosa che mi annullano l'header
    appunto.. se c'è anche un solo SPAZIO prima del redirect, quello non va a buon fine.. però dovrebbe anche darti un errore tipo "HEADERS ALREASY SENT.." eccetera..

  5. #5
    metti:
    error_reporting(E_ALL);

    in cima al tuo file php... così vedrai gli errori presenti e il motivo del mancato redirect.

    Cmq credo anche io che il motivo sia legato ad output già inviato (non è un problema di query)

  6. #6
    Utente bannato
    Registrato dal
    Dec 2010
    Messaggi
    297
    non capisco che significa all'output già inviato?

    scusatemi abbiate pazienza

  7. #7
    Utente bannato
    Registrato dal
    Dec 2010
    Messaggi
    297
    ho messo error_reporting(E_ALL);


    mi sono uscite un sacco di scritte di errori...
    pero' su un altra pagina



    Warning: main() [function.main]: open_basedir restriction in effect. File(../../p) is not within the allowed path(s): (/) in /membri2/sp on line 84

    Warning: main(../../) [function.main]: failed to open stream: Operation not permitted in /on line 84

    Warning: main() [function.include]: Failed opening '../../.php' for inclusion (include_path='.:') in /.php on line 84

    Warning: main() [function.main]: open_basedir restriction in effect. File(../../.php) is not within the allowed path(s): (/membri) in /membon line 85

    Warning: main(../../.php) [function.main]: failed to open stream: Operation not permitted in /on line 85

    Warning: main() [function.include]: Failed opening '../../.php' for inclusion (include_path='.:') in /on line 85


    che significano questi errori?

  8. #8
    Utente di HTML.it L'avatar di telegio
    Registrato dal
    Sep 2001
    Messaggi
    2,591
    ..se magari vedi cosa ci sta nelle righe incriminate.. 84 e 85.. cosa ci sta?
    diciamo che per ora ha ragione lui..

  9. #9
    Utente bannato
    Registrato dal
    Mar 2011
    Messaggi
    389
    ho anch'io questo problema

    mi dice

    Warning: Cannot modify header information - headers already sent by (output started at /indirizzo/1.php:54) in /indirizzo/2.php on line 163


    però nell'1.php alla riga 54 ci sta questo

    Codice PHP:

    53<div style="float:left;">
    54<? if(isset($_SESSION['ciao'])){
    55?><input type="text" id="prova" name=
    mentre nel file 2.php alla riga 163 ci sta

    Codice PHP:
    162 echo "Tra 3 secondi inizia il redir";
    163header("Refresh: 3; URL=url.php");
    164

    cosa cè di sbagliato non capisco

  10. #10
    alla riga 55 c'è l'output

    alla riga 163 si cerca di inviare headers

    la regola è sempre la stessa:
    gli headers vanno inviati prima di generare qualsiasi output
    http://www.miniscript.it
    Se ti sono stato di aiuto in qualche modo in questo forum iscriviti alla fan page di Miniscript - il mio blog di programmazione web.

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.