Ασυμβατότητα php script με τη νεα εκδοση της php?

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

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

Απάντηση
kemik
Δημοσιεύσεις: 13
Εγγραφή: 04 Μαρ 2009 04:05

Ασυμβατότητα php script με τη νεα εκδοση της php?

Δημοσίευση από kemik » 08 Οκτ 2011 16:20

Γεια σε όλους. Έχω ένα πρόβλημα που δε μπορώ να προσδιορίσω.

Έχω γράψει μια εφαρμογή συλλογής - αποθήκευσης και επεξεργασίας δεδομένων η οποία
δουλεύει κανονικά αλλά στην έκδοση php που είναι γραμμένη! Την έτρεξα σε server με php 5.2.17 (threat safe) και κάνει τις μισές δουλειές από αυτές που έπρεπε. Το log του server δε δείχνει κάποιο λάθος. Απλά ξαφνικά αποφασίζει και δε χρησιμοποιεί τις $_post και $_session μεταβλητές. ( δεν είναι όμως θέμα της ρύθμισης του php.ini -> register_globals).
Αν έχετε καμια ιδέα τι μπορεί να συμβαίνει δώστε και σώστε.

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

Ασυμβατότητα php script με τη νεα εκδοση της php?

Δημοσίευση από korgr » 08 Οκτ 2011 17:48

Τρέχω php 5.3.3 και δεν υπάρχει πουθενά πρόβλημα με τις $_POST, $_SESSION κλπ
Κάπου αλλού έχεις πρόβλημα. Ξεκίνα debuging με var_dump()

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

Ασυμβατότητα php script με τη νεα εκδοση της php?

Δημοσίευση από dva_dev » 08 Οκτ 2011 17:50

δουλεύει κανονικά αλλά στην έκδοση php που είναι γραμμένη
Και σε ποιά έκδοση είναι γραμμένη;

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

Ασυμβατότητα php script με τη νεα εκδοση της php?

Δημοσίευση από fafos » 08 Οκτ 2011 17:52

mhpos den kaneis sosth metatroph stis metavlhtes? gia paradeigma anti gia:

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

$name = $_SESSION['name'];
echo $name;
dineis sketo:

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

echo $name;
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

kemik
Δημοσιεύσεις: 13
Εγγραφή: 04 Μαρ 2009 04:05

Ασυμβατότητα php script με τη νεα εκδοση της php?

Δημοσίευση από kemik » 08 Οκτ 2011 21:15

Κάπου αλλού έχεις πρόβλημα. Ξεκίνα debuging με var_dump()
Σε κάποια σημεία οι $_POST δε γεμίζουν
Και σε ποιά έκδοση είναι γραμμένη;
5.2.9 σε xampp 1.7.1
mhpos den kaneis sosth metatroph stis metavlhtes?


Οι εκχωρίσεις μεταβλητών είναι σωστές.

Κοίταξα στο log του Apache και βρήκα τα εξής:

PHP Notice: Undefined index: error σε κάποια γραμμή. Κοίταξα εκεί και
η μεταβλητή που υπάρχει ειναι π.χ. $a = $_POST['name'] δε μου μοιάζει για λάθος.

Ακόμα υπάρχει το PHP Notice: Undefined offset: 1 και αναφέρεται σε μια μεταβλητή $var1 αλλά η επόμενη μεταβλητή με όνομα
$var2 δεν παρουσιάζει πρόβλημα.

Ευχαριστώ για το χρόνο σας

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

Ασυμβατότητα php script με τη νεα εκδοση της php?

Δημοσίευση από fafos » 08 Οκτ 2011 21:40

den einai thema ekdoshs php.. einai thema ton errors.. h dineis entolh na mhn deixni katholou ta notices h kathese kai allazeis kathe metavlhth:

if(!empty($_POST['name'])) { $a = $_POST['name'];} else {$a = '';}
Οι πάνες και οι πολιτικοί πρέπει να αλλάζονται συχνά για τον ίδιο λόγο...

kemik
Δημοσιεύσεις: 13
Εγγραφή: 04 Μαρ 2009 04:05

Ασυμβατότητα php script με τη νεα εκδοση της php?

Δημοσίευση από kemik » 16 Οκτ 2011 07:29

Επιτέλους λύθηκε. Για να δώσουμε και μια ουσιαστική απάντηση σε αυτό το post τελικά είχα δίκιο ότι υπήρχε πρόβλημα λόγο μετάβασης από 5.2.9 σε νεότερη έκδοση php. Το όνομα του προβλήματος ακούει στην κλήση της συνάρτησης array_unique. Επειδή η προερετική δεύτερη παράμετρός της από default SORT_REGULAR που ήταν στην 5.2.9 άλλαξε σε SORT_STRING (όπως ήταν και σε μικρότερες της 5.2.9) όποιος τη χρησιμοποίησε για να εξαλείψει διπλά στοιχεία σε array εξάλειψε εντελώς τα στοιχεία. Περισσότερες πληροφορίες εδώ: php.net/manual/en/function.array-unique.php

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

Ασυμβατότητα php script με τη νεα εκδοση της php?

Δημοσίευση από korgr » 16 Οκτ 2011 09:40

Εγώ ξέρω πως χρησιμοποιώ την array_unique περισσότερα από 8 χρόνια και δεν έχω αντιμετωπίσει καμία διαφορά στην εκτέλεση των scripts μου από τότε μέχρι και στην 5.3.3

Απάντηση

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

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

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