Compatibilità Script con php 5.3.0

Ciao a tutti

L'altro giorno ho aggiornato il mio xampp in locale con il quale smanetto per testare gli script prima di metterli online.

con php 5.2.x non ho mai avuto errori di nessun tipo e tutto andava tranquillo.

ora con php 5.3.0 ricevo questo errore:

codice:

( ! ) Parse error: syntax error, unexpected '}' in C:\xampp\htdocs\percorso\cartella\fornitori.php on line 112

Vi posto qua sotto il codice di questa paginetta, so che è un codice brutto ma era già cosi e ha sempre funzionato.

codice PHP:

<?
require'../include/set.inc.php';
if (isset($_COOKIE['pincopallo']))
{
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<title>Imex B2B - Private Area</title>
<link rel= "stylesheet" type="text/css" media="screen" href="../fogliodistile.css">
</head>
<body>
<div id="container">
<div id="header01">
<table summary="">
    <tr align="center">
        <td width=80>
            <img src="../images/imex01.gif" alt="imex">
        </td>
        <td width=200><font face="Comic Sans MS" size="3" color="#ffff00">
            <strong><i>Area<br>Privata<br></i></strong></font>
        </td>
        <td width=200>
            <font face="Comic Sans MS" size="4" color="#ffff00">
            <strong>B2B</strong></font>
        </td>
        <td width=200><font face="Comic Sans MS" size="3" color="#ffff00">
            <strong><i>PRIVATE<br>MEMBER<br>AREA</i></strong></font>
        </td>
    </tr>
</table>
</div>
<div id="header03">
<?php
    echo "today is ".date("F d, Y")."<br>";
?>
    <table cellspacing=2 cellpadding=2 summary="menu">
        <tr align="left">
            <td><a href="index.php">Home</a></td>
            <td><a href="clienti_imex.php">Clienti</a></td>
            <td><a href="fornitori.php">Fornitori</a></td>
            <td><a href="rubrica.php">Rubrica</a></td>
            <td><a href="insert_lotto.php">Gestione lotti</a></td>
            <td><a href="ricambi/add_ricambi.php">Gestione ricambi</a></td>
            <td><a href="gestione-vapor.php">Gestione Vapor</a></td>
            <td><a href="accessori.php">Accessori</a></td>
            <td><a href="listini.php">Listini Prezzi</a></td>
            <td><a href="avvisa_customer.php">Avvisa Cliente</a></td>
            <td><a href="clienti-passati.php">Gestione Clienti</a></td>
            <td><a href="assistenza/">Area Assistenza</a></td>
            <td bgcolor="#CC9900">
                <center>
                <font face="Andale Mono" color="#FFFFFF">
                    <a href="http://localhost" style="color: #FFFFFF">..::exit::..</a>
                </font>
                </center>
            </td>
        </tr>
    </table>
</div>
<div id="content"><br>    
<?php
if(isset($_POST['fornitore']))
{
    $fornitore = mysql_escape_string($_POST['fornitore']);
    @mysql_query("INSERT INTO fornitore (nome) VALUES ('$fornitore')") or die(mysql_error());
}
?>
<form method="post" action="<?php echo $_SERVER['PHP_SELF'];?>">
    Fornitore:<br><input type="text" name="fornitore"><br><br>
    <input type="submit" name="invia">
</form>
<br clear="all"><br>
<hr>
<table width="200" summary="">
    <tr align="center" bgcolor="#66FFFF">
        <td ><b>ID:</b></td>
        <td ><b>Fornitore:</b></td>
    </tr>
<?php
$sql3 = "SELECT * FROM fornitore ORDER BY id DESC";
$qExe = mysql_query($sql3) or die("Errore Browser System err: " . mysql_error());
while($row = mysql_fetch_assoc($qExe))
{
?>
    <tr bgcolor="#CCFF99">
        <td><?php echo($row['id']); ?></td>
        <td><?php echo($row['nome']); ?></td>
    </tr>
<?php
}
?>
</table>
<br>
</div>
</div>
<div id="footer">
<br>
<center>
<p>&nbsp;</p>
</center>
</div>
<div id="footer1">
<center>
© 2002-2003 All Rights Reserved.            
</center>
</div>
</body>
</html>
<?php
}
else
{
    header("location: ../index.php");
}
?>

Il punto in cui mi da errore sarebbe a questa altezza:

codice PHP:

}
else
{
    header("location: ../index.php");
}

solo che sarò rinco ma non ne capisco il motivo

Spero qualcuno sia cosi gentile da dargli un occhiata e che magari capisca anche dove sta l'errore

grazie mille a tutti

ciauuuu

inviato 7 anni fa
vercinstex
X 0 X

Hai provato a togliere il ";" di questa riga?

else
{
    header("location: ../index.php");
}
?>
risposto 7 anni fa
Mario Santagiuliana
X 0 X

ho appena provato e non cambia niente.

ho provato a togliere completamente l'if di controllo dei cookie e lo script funziona anche se poi mi da errori con mysql -.-'

Quindi in quel punto mi dice che c'è una graffa di troppo o magari non so qualche ; che io non vedo

 :'(

Hai provato a togliere il ";" di questa riga?

else
{
    header("location: ../index.php");
}
?>
risposto 7 anni fa
vercinstex
X 0 X

A me la sintassi dello script che ci hai dato sembra corretto, senza graffe di troppo...

risposto 7 anni fa
Mario Santagiuliana
X 0 X

pure a me non sembra sca22i niente

solo che con php 5.3 non mi va più

secondo te per la tua esperienza può dipendere anche da qualche impostazione nel php.ini???

Per esempio nel php.ini io ho impostato la visualizzazione errori su E_ALL | E_STRICT

perchè dice che suggerisce come correggere il codice, ma qua non esce una cippa :)

heheheheh

risposto 7 anni fa
vercinstex
X 0 X
secondo te per la tua esperienza può dipendere anche da qualche impostazione nel php.ini???

In questo caso no...  :-\

Per esempio nel php.ini io ho impostato la visualizzazione errori su E_ALL | E_STRICT

perchè dice che suggerisce come correggere il codice, ma qua non esce una cippa :)

heheheheh

Per vedere come  visualizzare gli errori degli script cerca anche nel forum.

I log di php ti dicono niente?

Prova da bash:

$ php -l il_tuo_script.php

Vedi se da errori particolari...

risposto 7 anni fa
Mario Santagiuliana
X 0 X

Quali log di php??

Cmq ho messo l'output della linea di comando su file e mi da questo:

Parse error: syntax error, unexpected '}' in c:\xampp\htdocs\percorso\cartella\fornitori.php on line 112
Errors parsing c:\xampp\htdocs\percorso\cartella\fornitori.php
secondo te per la tua esperienza può dipendere anche da qualche impostazione nel php.ini???

In questo caso no...  :-\

Per esempio nel php.ini io ho impostato la visualizzazione errori su E_ALL | E_STRICT

perchè dice che suggerisce come correggere il codice, ma qua non esce una cippa :)

heheheheh

Per vedere come  visualizzare gli errori degli script cerca anche nel forum.

I log di php ti dicono niente?

Prova da bash:

$ php -l il_tuo_script.php

Vedi se da errori particolari...

risposto 7 anni fa
vercinstex
X 0 X

Il codice di fornitori.php è esattamente quello che ci hai dato al primo messaggio della discussione?

risposto 7 anni fa
Mario Santagiuliana
X 0 X

si presso che identico

ho cambiato il nome del cookie e qualche parola chiave qua e la ma rimane cmq quello.

nessuna variazione per le parti in php

Il codice di fornitori.php è esattamente quello che ci hai dato al primo messaggio della discussione?
risposto 7 anni fa
vercinstex
X 0 X

Per sicurezza, ricontrolla, magari per sbaglio hai salvato il file inserendo caratteri sbagliati.

Quell'errore non può saltare fuori da solo!!  :bye:

risposto 7 anni fa
Mario Santagiuliana
X 0 X

Scusa la domanda stupida, ma caratteri sbagliati che vuol dire?? :)

Per sicurezza, ricontrolla, magari per sbaglio hai salvato il file inserendo caratteri sbagliati.

Quell'errore non può saltare fuori da solo!!  :bye:

risposto 7 anni fa
vercinstex
X 0 X

Intendo che magari hai inserito senza accorgerti un graffa in più...a me è capitato qualche volta, lo si fa senza accorgersi...

risposto 7 anni fa
Mario Santagiuliana
X 0 X

ora le ricontrollo

il fatto è che con np++ ho controllato già una volta la corrispondente graffa perchè si accendono di rosso

cmq riguardo

Intendo che magari hai inserito senza accorgerti un graffa in più...a me è capitato qualche volta, lo si fa senza accorgersi...
risposto 7 anni fa
vercinstex
X 0 X

no non mi risulta niente di strano

sia da controllo visivo sia dalla colorazione dell'ide

 :'(

risposto 7 anni fa
vercinstex
X 0 X

Ti chiederei di inserire qua il file esattamente così come è.

risposto 7 anni fa
Mario Santagiuliana
X 0 X

non posso

guarda l'unica differenza è che l'if dei cookie in originale è cosi

if (isset($_COOKIE['pincopallo']) && isset($_COOKIE['pincopallo2']) && isset($_COOKIE['pincopallo3']))

latra modifica non ha rilevanza

Ti chiederei di inserire qua il file esattamente così come è.
risposto 7 anni fa
vercinstex
X 0 X

Mi sembra di essere stupido  :buck: :buck:

La sintassi è completamente corretta, non vedo dove possa risiedere l'errore...

Hai detto che hai aggiornato xampp, posso pensare che sia andata a "male" l'aggiornamento...comunque non avrebbe più di tanto senso...

Magari puoi vedere nel changelog se è cambiato qualcosa....ma non mi sembra così tanto...

http://php.net/ChangeLog-5.php

risposto 7 anni fa
Mario Santagiuliana
modificato 7 anni fa
X 0 X

sinceramente l'unica cosa usata in quel file sono mysql i cookie e forse le sessioni, a cè anche il require che cmq posso cambiare in include.

il resto non mi tocca, anche perchè ci sarebbe la data ma hanno aggiunto funzioni e non modificato quella base.

boh proverò a disinstallare tutto e fare un installazione pulita dell'ultimo xampp dopo aver fatto il backup di tutto :D

GRazie mille cmq per la pazienza in caso aggiornerò il posta se otterrò qualche risultato o se non li otterrò affatto :D

ciauuuuuu  :bye:

Mi sembra di essere stupido  :buck: :buck:

La sintassi è completamente corretta, non vedo dove possa risiedere l'errore...

Hai detto che hai aggiornato xampp, posso pensare che sia andata a "male" l'aggiornamento...comunque non avrebbe più di tanto senso...

Magari puoi vedere nel changelog se è cambiato qualcosa....ma non mi sembra così tanto...

http://php.net/ChangeLog-5.php

risposto 7 anni fa
vercinstex
X 0 X

ciao

ho risolto

me l'ha fatto notare un tipo su html.it

in pratica erano gli short tag iniziali che scasinavano tutto e non andava :D

 O0 O0 O0

 :bye:

risposto 7 anni fa
vercinstex
X 0 X

Ah cavolo non l'avevo neppure io notato  :o :o :o

Al primo colpo d'occhio credevo fosse un errore di battitura poi non c'ho più pensato  :2funny: :2funny:

Ottimo :bye:

risposto 7 anni fa
Mario Santagiuliana
X 0 X

eheeheheh si perchè mi hanno appunto detto che in xampp 1.7.2 hanno messo di default ad off i short tag

:D

risposto 7 anni fa
vercinstex
X 0 X
Effettua l'accesso o registrati per rispondere a questa domanda