Torna indietro   Hardware Upgrade Forum > Software > Programmazione

WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà
Un mondo affollato e vivo, personaggi destinati a sparire a fine test e nessuno a inseguire l'oggetto giusto. Beta e stress test di World of Warcraft: Forever hanno fatto emergere un roleplay spontaneo, tra danze a Goldshire e code ordinate ai PNG
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA
In tre giorni a Las Vegas Oracle ha presentato agenti che eseguono il lavoro, l'alleanza con OpenAI e un cloud aperto agli acceleratori di tutti. Ma i clienti europei chiedono garanzie prima ancora delle funzionalità
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort
Fino a 740 km WLTP con la batteria da 97,2 kWh, sospensioni che leggono la strada con una telecamera e un abitacolo da salotto parigino. La nuova DS N°7 raccoglie l'eredità della DS 7 e la porta, per la prima volta, nel mondo 100% elettrico. Ecco come è fatta, cosa offre e quanto costa.
Tutti gli articoli Tutte le news

Vai al Forum
Rispondi
 
Strumenti
Old 17-06-2005, 18:53   #1
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
[PHP] Ridirezione: forse lo sbaglio, help!!

[EDIT for update]
[1] REDIRECT SFRUTTANDO I META
Va inserito all'interno dei tag <head> e </head>
Codice HTML:
<META HTTP-EQUIV=REFRESH CONTENT="5; URL=http://www.MioSito.it">
[2] REDIRECT CON JAVASCRIPT
Va inserito all'interno dei tag <head> e </head>
Codice HTML:
<SCRIPT LANGUAGE="Javascript">
<!--
window.location="http://www.MioSito.it"
//-->
</SCRIPT>
[3] REDIRECT CON LINGUAGGIO ASP
Usare sempre l'istruzione <%response.buffer=true%> per evitare di incorrere in errori di interpretazione lato server.
Codice:
<%response.buffer=true%> 
<% 
response.redirect "http://www.MioSito.it" 
%>
[4] REDIRECT CON PERL
Codice:
<% @LANGUAGE="Perlscript" %>
<%
  $url="http://www.MioSito.it";
  $Response->Redirect("$url");
%>
[5] REDIRECT CON PHP
Codice PHP:
<?php 
$url 
= "http://www.MioSito.it";
if (
$url) {
    
header("Location: $url");
} else if(
$QUERY_STRING) {
    
header("Location: ".urldecode($QUERY_STRING));
} else {
    echo 
"Attenzione, l'URL è sbagliato";
}
?>
[6] REDIRECT CON PYTHON
usando mod_python (modulo di Apache)
Codice:
from mod_python import util

def FunzioneRichiamata(req):

  util.redirect(req, 'http:/www.nuova.url')
---- O L D P O S T ----

Io uso questo codice:
Codice PHP:
//ridirezione
if($numero == 1) header('Location: http://localhost/sysconf/mioaccount.php'); 
e ottengo questo errore:

Warning: Cannot modify header information - headers already sent by (output started at D:\www\sysconf\top.php:10) in D:\www\sysconf\login.php on line 21
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 30-09-2010 alle 11:11.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 17-06-2005, 18:54   #2
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Come faccio, quando ho ad esempio completato il controllo di un login o la registrazione di un utente a reindirizzarlo ad un'altra pagina, chessò ad esempio ad 1 catalogo.php ?!?!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 17-06-2005, 19:07   #3
Argosoft
Senior Member
 
L'Avatar di Argosoft
 
Iscritto dal: Aug 2003
Città: addio fabriANO... mò sto a Roma ahò!!
Messaggi: 579
Quote:
Originariamente inviato da Matrixbob
Come faccio, quando ho ad esempio completato il controllo di un login o la registrazione di un utente a reindirizzarlo ad un'altra pagina, chessò ad esempio ad 1 catalogo.php ?!?!
puoi fare come qui sul forum, mostrando una paginina intermedia che dice "sei stato riconosciuto" etc e poi inserire un link a catalogo.php (o per eleganza anche uno script javascript che fa il redirect.. tipo questo:

Codice:
<script language="javascript">
		function Redirect(){
			location.href = "catalogo.php";
		}

		setTimeout("Redirect()",3000);
</script>
)

sta funzione header() non la conoscevo, interessante! o_O forse ti dà quell'errore perché la chiami dopo la sezione <head> della pagina... un po' come i cookies, che appena li metti un po' più in giù non funziona più un ca##o

qui potresti trover un po' di help : http://it2.php.net/header

ciau!
Argosoft è offline   Rispondi citando il messaggio o parte di esso
Old 17-06-2005, 19:27   #4
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
javascript?!!!!
io lo odio... lo sto facendo solo "server side" il sito (PHP/JSP).

Sto cercando di mantenere il sito W3C autenticato, quindi questo script nel codice non posso sbatterglielo, devo metterlo nel file.js che poi come richiamo però?!

Se non trovo altra alternativa uso questa, adesso provo questo ...
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 17-06-2005 alle 19:32.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 17-06-2005, 19:31   #5
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
e la pagina intermedia come la sbatto nello script?!

me lo fai con intermedia.php lo script?!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 17-06-2005, 19:56   #6
anonimizzato
 
Messaggi: n/a
Quote:
Originariamente inviato da Matrixbob
Io uso questo codice:
Codice PHP:
//ridirezione
if($numero == 1) header('Location: http://localhost/sysconf/mioaccount.php'); 
e ottengo questo errore:

Warning: Cannot modify header information - headers already sent by (output started at D:\www\sysconf\top.php:10) in D:\www\sysconf\login.php on line 21
controlla che non vi sia niente tipo spazi o altro codice che viene inviato al browser prima della funzione di redirect di PHP, è una cosa molto comune incappare in questo errore.
  Rispondi citando il messaggio o parte di esso
Old 17-06-2005, 20:05   #7
Argosoft
Senior Member
 
L'Avatar di Argosoft
 
Iscritto dal: Aug 2003
Città: addio fabriANO... mò sto a Roma ahò!!
Messaggi: 579
Quote:
Originariamente inviato da Matrixbob
e la pagina intermedia come la sbatto nello script?!

me lo fai con intermedia.php lo script?!
io di solito organizzo la mia pagina php così:

Codice PHP:
<html>
<head>
 ...qui richiamerai il tuo .js no?
</head>
<body>
<?
//si prende come flag di controllo la variabile 'mode'
if(!isset($_POST['mode']))
    
$mode = 'form';
else
    
$mode = $_POST['mode'];

switch(
$mode){
    case 
'form':
        
?>
            <form name="frmLogin" action="login.php" method="post"> 
                visualizza i textbox per il login...
                <input name="mode" type="hidden" value="login">
            </form>
        <?    
    
break;
    
    case 
'login':
        
$username = $_POST['...'];
        
$password = $_POST['...'];
        
        
//controlla se sono giusti..
        
        
if(!$giusti)
            die(
'login errato');
            
        
//aggiorna la sessione
        
        //tutto è andato bene quindi facciamolo entrare 
        
        
?>
            Login corretto! stai per entrare, <a href="catalogo.php">clicca qui</a> o attendi che il browser ti reindirizzi
            
            <script language="javascript">
                //richiami la funzione di redirect che sta nel js
            </script>
        <?
    
break;
}

?>
</body>
</html>
Argosoft è offline   Rispondi citando il messaggio o parte di esso
Old 17-06-2005, 20:07   #8
Argosoft
Senior Member
 
L'Avatar di Argosoft
 
Iscritto dal: Aug 2003
Città: addio fabriANO... mò sto a Roma ahò!!
Messaggi: 579
Quote:
Originariamente inviato da Sgurbat
controlla che non vi sia niente tipo spazi o altro codice che viene inviato al browser prima della funzione di redirect di PHP, è una cosa molto comune incappare in questo errore.
yeah...

poi fammi sapere come funziona sta header() che mi interessa

ciauz!
Argosoft è offline   Rispondi citando il messaggio o parte di esso
Old 17-06-2005, 21:06   #9
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da Sgurbat
controlla che non vi sia niente tipo spazi o altro codice che viene inviato al browser prima della funzione di redirect di PHP, è una cosa molto comune incappare in questo errore.
Cmq qella è l'unica maniera di fare la redirect in PHP o c'è ne sono altre?!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 17-06-2005, 21:06   #10
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Grazie Argosoft, adesso vedo se riesco ad utilizzare il tuo codice.
Si ma non mi hai fatto vedere come permettere di vedere una pagina intermedia per qualche secondo.

EDIT: ... ah ho capito è questa parte:

Login corretto! stai per entrare, <a href="catalogo.php">clicca qui</a> o attendi che il browser ti reindirizzi

<script language="javascript">
//richiami la funzione di redirect che sta nel js
</script
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.

Ultima modifica di Matrixbob : 17-06-2005 alle 21:13.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 17-06-2005, 21:16   #11
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
>> DOMANDONE <<

Invece di fargli fare:
header('Location: http://localhost/sysconf/mioaccount.php');

posso fargli stampare il nome del server così:
header('Location: http://$NOME_DEL_SERVER/sysconf/mioaccount.php');

in modo da renderlo indipendete dal server su cui si trova?!
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 17-06-2005, 22:09   #12
beppegrillo
Senior Member
 
L'Avatar di beppegrillo
 
Iscritto dal: Mar 2004
Messaggi: 1455
Quote:
Originariamente inviato da Matrixbob
>> DOMANDONE <<

Invece di fargli fare:
header('Location: http://localhost/sysconf/mioaccount.php');

posso fargli stampare il nome del server così:
header('Location: http://$NOME_DEL_SERVER/sysconf/mioaccount.php');

in modo da renderlo indipendete dal server su cui si trova?!
Se usi gli apici '' php non ti traduce il valore della variabile, ovviamente non ci vuole molto a decomporre la stringa.
Per la domanda precedente:
Si è l'unico modo lato server x php.
__________________
Ciao ~ZeRO sTrEsS~
beppegrillo è offline   Rispondi citando il messaggio o parte di esso
Old 18-06-2005, 00:21   #13
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da beppegrillo
Se usi gli apici '' php non ti traduce il valore della variabile, ovviamente non ci vuole molto a decomporre la stringa.
Mmm non sei stato molto chiaro, stai dicendo che con i doppi apici "$VAR" rimane scritto il nome della variabile.
Se invece metto l'apice '$VAR' allora viene scritto il valore della variabile?!
Almeno così ho capito io.
Quote:
Per la domanda precedente:
Si è l'unico modo lato server x php.
ok, peccato.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 18-06-2005, 02:39   #14
beppegrillo
Senior Member
 
L'Avatar di beppegrillo
 
Iscritto dal: Mar 2004
Messaggi: 1455
Quote:
Originariamente inviato da Matrixbob
Mmm non sei stato molto chiaro, stai dicendo che con i doppi apici "$VAR" rimane scritto il nome della variabile.
Se invece metto l'apice '$VAR' allora viene scritto il valore della variabile?!
Almeno così ho capito io.
Esattamente l'opposto
__________________
Ciao ~ZeRO sTrEsS~
beppegrillo è offline   Rispondi citando il messaggio o parte di esso
Old 18-06-2005, 09:21   #15
SteR9
Senior Member
 
L'Avatar di SteR9
 
Iscritto dal: Jun 2002
Città: Milano
Messaggi: 959
puoi usare un meta così:

<meta http-equiv="Refresh" content="4;url=http://www.sito.com/url">

dove 4 è il numero di secondi dopo quanto fare il redirect.

ciao
SteR9 è offline   Rispondi citando il messaggio o parte di esso
Old 18-06-2005, 12:14   #16
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Quote:
Originariamente inviato da SteR9
puoi usare un meta così:

<meta http-equiv="Refresh" content="4;url=http://www.sito.com/url">

dove 4 è il numero di secondi dopo quanto fare il redirect.

ciao
... e questo non da fastidio allo standard W3C, almeno mi sembra.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 18-06-2005, 12:22   #17
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
Secondo voi quale resta la migliore:
1] lato server con header();
2] il javasript
3] o il meta

__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 18-06-2005, 15:25   #18
kk3z
Senior Member
 
L'Avatar di kk3z
 
Iscritto dal: Nov 2003
Messaggi: 980
Lo javascript (nel codice php lo sbatti dove vuoi, e non conta la validazione perchè tanto la pagina con lo script è subito sovrascritta dal redirect :P ) finchè il browser lo supporta (opera?), altrimenti l'header() + ob_start() e ob_end_flush(); e come ultima possibilità il meta
kk3z è offline   Rispondi citando il messaggio o parte di esso
Old 18-06-2005, 16:23   #19
Matrixbob
Senior Member
 
L'Avatar di Matrixbob
 
Iscritto dal: Jul 2001
Messaggi: 9948
> l'header() + ob_start() e ob_end_flush();
Puoi spiegare cosa fanno i primi due accoppiati ed il terzo da solo?!
TNX!

CMQ io pensavo il meta primo, header() come secondo ed in fine il JS come terzo.
__________________
Aiuta la ricerca col tuo PC: >>Calcolo distribuito BOINC.Italy: unisciti anche tu<<
Più largo è il sorriso, più affilato è il coltello.
Matrixbob è offline   Rispondi citando il messaggio o parte di esso
Old 18-06-2005, 17:25   #20
kk3z
Senior Member
 
L'Avatar di kk3z
 
Iscritto dal: Nov 2003
Messaggi: 980
Quote:
Originariamente inviato da Matrixbob
> l'header() + ob_start() e ob_end_flush();
Puoi spiegare cosa fanno i primi due accoppiati ed il terzo da solo?!
TNX!

CMQ io pensavo il meta primo, header() come secondo ed in fine il JS come terzo.
ob_start() attiva il buffering di ciò che deve essere stampato, che non viene stampato fino a quando non si chiama ob_end_flush() (che stampa tutto quello che è stato "bufferato" dopo la chiamata di ob_start() ). Per esempio:

questo ti dà errore:
Codice PHP:
<?php echo "ciao"; header("Location: index.php"); ?>
questo no:
Codice PHP:
<?php ob_start(); echo "ciao"; header("Location: index.php"); ob_end_flush();

Ultima modifica di kk3z : 18-06-2005 alle 17:29.
kk3z è offline   Rispondi citando il messaggio o parte di esso
 Rispondi


WoW Forever: la beta è stato uno dei momenti più alti della storia dei videogiochi, e non si ripeterà WoW Forever: la beta è stato uno dei mome...
Oracle AI World 2026: in Europa prima la sovranità, poi la sicurezza e solo dopo l'IA Oracle AI World 2026: in Europa prima la sovrani...
DS N°7 E-Tense: il SUV premium made in Melfi che punta su autonomia e comfort DS N°7 E-Tense: il SUV premium made in Melfi...
Recensione Samsung Galaxy Tab S12 Ultra: non chiamatelo tablet... è molto di più Recensione Samsung Galaxy Tab S12 Ultra: non chi...
Hyundai IONIQ 5 N, l'elettrica che finge di essere termica (e ci riesce da paura) Hyundai IONIQ 5 N, l'elettrica che finge di esse...
Una tassa di 5,5 centesimi su ogni gigab...
Vuoi clonare un videogioco con l'IA? Cla...
Furto da 6,3 miliardi di dollari, Binanc...
Gli USA dipendono dai robot stranieri: T...
Volkswagen non ha più soldi per l...
Telescopio spaziale Hubble: la NASA cerc...
Più sottile e potente: le nuove i...
Il JPL estende la vita operativa della s...
DAZN Full è in offerta: tutta la ...
GTA 6 su PC potrebbe arrivare prima del ...
Da zero al tracciato in secondi: LibreCo...
Il regista Rian Johnson lancia a 12,99 d...
Microsoft stravolge l'app Sicurezza di W...
Mercato smartphone in caduta libera: -20...
Android 17 QPR3 Beta 3 riporta il blocco...
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: 04:54.


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