Πρόβλημα με header(Location: )

Σε αυτή την περιοχή μπορείτε να βρείτε ή να αναζητήσετε πληροφορίες σχετικές με την PHP

Συντονιστές: WebDev Moderators, Super-Moderators, PHP Moderators

Άβαταρ μέλους
ThyClub
Honorary Member
Δημοσιεύσεις: 5312
Εγγραφή: 17 Νοέμ 2003 00:21
Τοποθεσία: Hell's Kitchen
Επικοινωνία:

Πρόβλημα με header(Location: )

Δημοσίευση από ThyClub » 09 Μάιος 2009 12:46

Στο login.php έχεις κενά ή HTML πρίν απο το <?php έτσι αυτά τα ξερνάει σαν output.

Headers μπορείς να στείλεις μόνο όταν δεν έχεις εμφανίσει html

Και όταν λέμε να εμφανίσεις τον κώδικα του conn.php δεν λέμε οτι έχεις πρόβλημα με την βάση σου αλλά μπορεί εκεί να υπάρχει κάποιο output και να δημιουργεί το πρόβλημα σε άλλο αρχείο.

Άβαταρ μέλους
dva_dev
Script Master
Δημοσιεύσεις: 3790
Εγγραφή: 16 Σεπ 2005 01:32
Επικοινωνία:

Πρόβλημα με header(Location: )

Δημοσίευση από dva_dev » 09 Μάιος 2009 13:05

Αυτό τι είναι;
output started at /home/foulbet/public_html/login.php:9
Μήπως έχεις εκεί τίποτα echo ή html κώδικα;

dpa
Δημοσιεύσεις: 631
Εγγραφή: 29 Μαρ 2008 13:55

Πρόβλημα με header(Location: )

Δημοσίευση από dpa » 09 Μάιος 2009 13:07

Παιδιά το βρήκα με Javascript.

Δείτε τι έκανα ώστε να γνωρίζεται και εσείς.
Είδα από το manual της php την παρακάτω συνάρτηση.
function redirect($url){
if (!headers_sent()){ //If headers not sent yet... then do php redirect
header('Location: '.$url); exit;
}else{ //If headers are sent... do java redirect... if java disabled, do html redirect.
echo '<script type="text/javascript">';
echo 'window.location.href="'.$url.'";';
echo '</script>';
echo '<noscript>';
echo '<meta http-equiv="refresh" content="0;url='.$url.'" />';
echo '</noscript>'; exit;
}
}

Την έβαλα στον κώδικα και έγραψα:
redirect("web_master/insert.php?user_id=$user_id2");

Και όλα ΟΚ!!!!!!!!


http://www.foulbet.gr

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Πρόβλημα με header(Location: )

Δημοσίευση από korgr » 09 Μάιος 2009 22:59

dpa έγραψε:Παιδιά το βρήκα με Javascript.

Δείτε τι έκανα ώστε να γνωρίζεται και εσείς.
Είδα από το manual της php την παρακάτω συνάρτηση.
function redirect($url){
if (!headers_sent()){ //If headers not sent yet... then do php redirect
header('Location: '.$url); exit;
}else{ //If headers are sent... do java redirect... if java disabled, do html redirect.
echo '<script type="text/javascript">';
echo 'window.location.href="'.$url.'";';
echo '</script>';
echo '<noscript>';
echo '<meta http-equiv="refresh" content="0;url='.$url.'" />';
echo '</noscript>'; exit;
}
}

Την έβαλα στον κώδικα και έγραψα:
redirect("web_master/insert.php?user_id=$user_id2");

Και όλα ΟΚ!!!!!!!!


http://www.foulbet.gr
Sorry φιλε μου αλλα καμια λυση δεν βρηκες. Αυτο που εκανες ειναι "μπακαλικο" του κερατα! Στειλε μου αν θες το αρχειο σου στο notis at korinthorama.gr και θα στο επιστρεψω χωρις javascript και αηδιες. Pure php που θα δουλευει το Location

Εκτος αν αυτο που ηθελες ειναι απλα να δουλεψει χωρις να σε ενδιαφερει αν ειναι η ενδεδειγμενη αντιμετωπιση. Στην περιπτωση αυτη, ποτε δεν θα γινεις ενας σωστος coder...
Μην αφηνεις κενα πισω σου, θα τα βρεις μπροστα σου. Μαθε ΓΙΑΤΙ δεν δουλευει! Εκει κρυβεται το μεγαλειο της γνωσης...

mariosal
Honorary Member
Δημοσιεύσεις: 1473
Εγγραφή: 09 Νοέμ 2007 23:55

Πρόβλημα με header(Location: )

Δημοσίευση από mariosal » 10 Μάιος 2009 00:49

Κώδικας: Επιλογή όλων

header&#40;'Location&#58; web_master/insert.php?user_id=$user_id2'&#41;;
Έτσι τρέχει η header(); Τώρα εάν δεν δουλεύει κάτι άλλο φταίει. Στείλε μας εάν δεν δουλεύει όλο τον κώδικα τελειωμένο χωρίς να τον αλλάζεις συνέχεια και να μπερδευόμαστε.

dpa
Δημοσιεύσεις: 631
Εγγραφή: 29 Μαρ 2008 13:55

Πρόβλημα με header(Location: )

Δημοσίευση από dpa » 10 Μάιος 2009 15:54

Παιδιά σας έστειλα τον κώδικα στην πρώτη σελίδα

Αυτό που γράφεις φίλε δεν παίζει.

Ευχαριστώ πολύ

Ξαναμελετήστε τον κώδικα:

<?php


$username = $_POST['username'];
$password = $_POST['password'];

if(!isset($_POST['submit'])) {
exit;
} else {
include('conn.php');

mysql_query("SET NAMES 'greek'",$conn);
$sql = "SELECT username, password, user_id FROM user WHERE username = '".$username."' and password = '".$password."'";
$result = mysql_query($sql,$conn) or die('Adinati ektelesi query'.mysql_query());

while($row = mysql_fetch_array($result)){
$user = $row['username'];
$pass = $row['password'];
$user_id2 = $row['user_id'];
}
if(($username === $user) && ($password === $pass)){
$_SESSION['username'] = $user;
header("Location: web_master/insert.php?user_id=".$user_id2);
exit;
} else {
die("Αδύνατη είσοδος");
}

}//end if

?>


Αν κάποιος είναι γάτος και το βρεί χωρίς Javascript τότε του βγάζω το καπέλο.

Άβαταρ μέλους
fafos
Script Master
Δημοσιεύσεις: 6230
Εγγραφή: 30 Νοέμ 2004 03:09

Πρόβλημα με header(Location: )

Δημοσίευση από fafos » 10 Μάιος 2009 16:08

Palikari mou, h esy den katalavaineis ti sou leme h emeis den sto dinoume kala na to katalaveis...

THELOUME TO ARXEIO AUTHENTIKO OPOS EINAI SE ENA ZIP ARXEIO!!!

gnorizeis ti einai to bom sthn UTF-8?
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

mariosal
Honorary Member
Δημοσιεύσεις: 1473
Εγγραφή: 09 Νοέμ 2007 23:55

Πρόβλημα με header(Location: )

Δημοσίευση από mariosal » 10 Μάιος 2009 17:56

Βγάλε το exit; κάτω από το header(); και δοκίμασε αυτό που σου έγραψα.

Άβαταρ μέλους
korgr
Honorary Member
Δημοσιεύσεις: 5067
Εγγραφή: 07 Οκτ 2008 18:30
Τοποθεσία: Corinth
Επικοινωνία:

Πρόβλημα με header(Location: )

Δημοσίευση από korgr » 10 Μάιος 2009 21:21

dpa έγραψε:
Αν κάποιος είναι γάτος και το βρεί χωρίς Javascript τότε του βγάζω το καπέλο.
Αυτα που σου λεμε εγω και ο fafos δεν θες λογω του εγωισμου σου να τα καταλαβεις!
Το προβλημα σου δεν ειναι στον κωδικα (στο ορατο τμημα του).
Γιαυτο σου ζητησαμε το αρχειο και οχι το περιεχομενο του.

Τελικα για καποιους δεν αξιζει καν να τρως τον χρονο σου και να τους ανοιγεις τα ματια. Οταν καποιοι τα μαθαιναν σε μας, αν μη τι αλλο το σεβομασταν γιαυτο και φτασαμε εδω που φτασαμε. Οσον αφορα εσενα, θα επιμεινω:

Παιζει και παραπαιζει φιλαρακο! :violi:

mariosal
Honorary Member
Δημοσιεύσεις: 1473
Εγγραφή: 09 Νοέμ 2007 23:55

Πρόβλημα με header(Location: )

Δημοσίευση από mariosal » 11 Μάιος 2009 00:20

dpa έγραψε:Αν κάποιος είναι γάτος και το βρεί χωρίς Javascript τότε του βγάζω το καπέλο.
Συγγνώμη για την έκφραση αλλά... Τι διάλα υπάρχει το header(); στην PHP εάν δεν δουλεύει;

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Πρόβλημα με header(Location: )

Δημοσίευση από Apostolis_38 » 22 Μάιος 2009 19:17

Παιδιά καλησπέρα.
Για να μην ανοίγω νέο topic ξέθαψα αυτό γιατί έχω κι εγώ ένα προβληματάκι με την header location.
Το πρόβλημα έχει ως εξής:

Σε μία σελίδα ο χρήστης επιλέγει αν θα τροποποιήσει μια εγγραφή, αν θα την διαγράψει ή αν θα ανεβάσει εικόνες,video κ.λ.π.
Αν επιλέξει τα uploads, αναλόγως τι θα επιλέξει (εικόνα κ.λ.π.) οδηγείται σε άλλη σελίδα με header location

Το πρόβλημα είναι πως στην αρχή της σελίδας υπάρχει σύνδεση με css αρχείο <link rel = "stylesheet" κ.λ.π. κ.λ.π.> έτσι δημιουργείται το γνωστό σφάλμα headers already sent.
Οταν καταργείται η σύνδεση το header location δουλεύει αλλά, φυσικά, καταργείται το στύλ της σελίδας.

Υπάρχει κάποιος τρόπος να δηλωθεί το css link με php κώδικα;
Η να αναπαράγω με php αυτό το css;

Κώδικας: Επιλογή όλων

.text
&#123;
font-family&#58; Tahoma;
font-size&#58; 14;
font-weight&#58; underline;
font-smooth&#58; always;
letter-spacing&#58; 1px;
word-spacing&#58; 2px;
&#125;

Άβαταρ μέλους
Banavas
Script Master
Δημοσιεύσεις: 1367
Εγγραφή: 21 Νοέμ 2004 20:25
Επικοινωνία:

Πρόβλημα με header(Location: )

Δημοσίευση από Banavas » 24 Μάιος 2009 08:56

Μπορείς να χρησιμοποιήσεις buffers ob_start() - ob_flush().
Με την χρήση των buffers η php πρώτα διαβάζει ολόλκηρο το περιεχόμενο της σελίδας και έπειτα αρχίζει να το στέλνει στο browser, δηλαδή δεν στέλνει τα δεδομένα σειριακά με την σειρά που τα διαβάζει αλλά στο τέλος όλα μαζί. Έτσι δεν έχει προηγηθεί έξοδος πριν από το header.
Happy coding....
Μάρκος
http://lasernet.gr

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Πρόβλημα με header(Location: )

Δημοσίευση από Apostolis_38 » 25 Μάιος 2009 12:53

Αψογος. Επαιξε αμέσως.
Ευχαριστώ.

Άβαταρ μέλους
Basilakis
PHP Moderator
Δημοσιεύσεις: 8574
Εγγραφή: 17 Νοέμ 2003 13:03
Τοποθεσία: Womans' Brain
Επικοινωνία:

Πρόβλημα με header(Location: )

Δημοσίευση από Basilakis » 25 Μάιος 2009 15:37

http://catb.org/esr/faqs/smart-questions.html

δεν νομίζω πως μπορούμε να βοηθήσουμε εάν δεν ακολουθείς αυτά που ζητάμε. :)

Και στο κάτω κάτω, με το zip εάν το ανεβάσεις δεν θα σου κλέψουμε τον κώδικα σου που είναι ποία τόσο συμαντικος που μεγενθύνει τα ψηφιακά pixel που στέλνει ο δορυφόρος της νάσας μέσω τηλεφώνου και τα μετατρέπει σε εικόνα

Apostolis_38
Δημοσιεύσεις: 1969
Εγγραφή: 14 Φεβ 2008 16:20
Τοποθεσία: ΠΕΙΡΑΙΑΣ

Πρόβλημα με header(Location: )

Δημοσίευση από Apostolis_38 » 25 Μάιος 2009 17:37

Εχω την εντύπωση οτι μπερδεύτηκες :D :D :D

Δεν είμαι αυτός που κρατάει τον θησαυρό για πάρτη του.
Εγώ έκανα δεύτερη ερώτηση για να μην ανοίγω νέο topic.

Απάντηση

Επιστροφή στο “PHP Προγραμματισμός”

Μέλη σε σύνδεση

Μέλη σε αυτήν τη Δ. Συζήτηση: Δεν υπάρχουν εγγεγραμμένα μέλη και 0 επισκέπτες