Parser error
Dernière réponse : dans Programmation
Bonjour à tous,
Je tourne en rond depuis plusieurs jours pour trouver d'où vient mon erreur. Voilà ce que me retourne le scripts :
Parse error: parse error in C:\xampp\***\***\***\***\script.php on line 196
Et voilà ma partie de code où ce trouve l'erreur :
Merci de m'aider !
Amicalement
Je tourne en rond depuis plusieurs jours pour trouver d'où vient mon erreur. Voilà ce que me retourne le scripts :
Parse error: parse error in C:\xampp\***\***\***\***\script.php on line 196
Et voilà ma partie de code où ce trouve l'erreur :
function parsechecks( &$html, $name, $sql, $mask, $num_columns = 1, $add = 0 ) { if ( ( $sql ) ) { $i = 0; $total_checks = (); // ICI CE TROUVE LA LIGNE 196 $in_column = ceil( ( $total_checks + $add ) / $num_columns ); do { if ( !( $row = ( ) ) ) { break; } else { ++$i; $html->setvar( "id", $row[0] ); $html->setvar( "title", $row[1] ); } if ( $mask & 1 << $row[0] - 1 ) { $html->setvar( "checked", " checked" ); } else { $html->setvar( "checked", "" ); } if ( $i % $in_column == 0 && $i != 0 && ( $i != $total_checks || 0 < $add ) && $num_columns != 1 ) { $html->parse( $name."_column", true ); } else { $html->setblockvar( $name."_column", "" ); } $html->parse( $name, true ); } while ( 1 ); (); } } }
Merci de m'aider !
Amicalement
Autres pages sur : parser error
Lassé par la pub ? Créez un compte
OmaR a dit :
Salut,Parce que ça te parait normal à toi de déclarer une variable en lui mettant () ?
Tu veux peut être l'initialiser à 0 par exemple ?
Salut,
Cette portion de script doit faire afficher les options de menu si on est un client enregistré ou non (avec un option payante et client libre)
J'ai bien tenté d'initialiser la variable à "0", mais çà m'indique la même erreur ligne 38 dans l'exemple du post. Et même en initialisant cette variable ligne 38 à "0" également, je me retrouve avec une page qui ne charge que la moitié des modules et aucune images (templates)
Merci de ta réponse
Mais il doit te manquer des noms de fonctions ou je sais pas quoi... Ou sinon y'a des choses que je ne connais pas...
Mais je n'ai jamais vu de choses de ce genre:
C'est comme si ça voulait appeler des fonctions, mais que le nom des fonctions n'étaient pas indiquées, et il resterait que les parenthèses...
D'où est-ce que ça vient ton code ?
Mais je n'ai jamais vu de choses de ce genre:
$total_checks = ();
if ( !( $row = ( ) ) )
();
C'est comme si ça voulait appeler des fonctions, mais que le nom des fonctions n'étaient pas indiquées, et il resterait que les parenthèses...
D'où est-ce que ça vient ton code ?
C'est un code de class qui doit débloquer des options. Je te file l'intégralité du script, peut être que tu y verra plus clair :
<?php class cheader extends chtmlblock { var $message_template = ""; function cheader( $name, $html_path ) { $this->chtmlblock( $name, $html_path ); } function parseblock( &$html ) { global $g; global $g_user; global $g_info; global $area; global $p; if ( 0 < $g_user['gold_days'] ) { $baner = get_banner( "top_gold" ); } else { $baner = get_banner( "top" ); } if ( $baner !== false ) { $html->setvar( "banner_top", $baner ); $html->parse( "banner_top", true ); } if ( $area == "login" ) { foreach ( $g_user as $k => $v ) { $html->setvar( $k, $v ); } } foreach ( $g_info as $k => $v ) { $html->setvar( $k, $v ); } if ( isset( $g['options']['top_select'] ) && $g['options']['top_select'] == "Y" ) { $dir = $g['path']['dir_lang']."main/"; if ( is_dir( $dir ) && ( $dh = opendir( $dir ) ) ) { while ( ( $file = readdir( $dh ) ) !== false ) { $html->setvar( "language_value", $file ); $html->setvar( "language_title", ucfirst( $file ) ); $html->parse( "language", true ); } closedir( $dh ); } $dir = $g['path']['dir_tmpl']."main/"; if ( is_dir( $dir ) && ( $dh = opendir( $dir ) ) ) { while ( ( $file = readdir( $dh ) ) !== false ) { $html->setvar( "template_value", $file ); $html->setvar( "template_title", ucfirst( $file ) ); $html->parse( "template", true ); } closedir( $dh ); } $html->parse( "view", true ); } foreach ( $g_info as $k => $v ) { $html->setvar( "i_".$k, $v ); } $html->parse( "info" ); if ( $area == "login" ) { if ( $g['options']['blogs'] == "Y" ) { $html->parse( "all_blogs", true ); $html->parse( "all_blogs_u", true ); } if ( $g_user['gold_days'] == 0 ) { $html->parse( "menu_upgrade" ); } $pages = array( "home", "users_hon", "top5", "users", "search", "mail", "profile", "blogs", "forum", "chat", "flashchat", "news", "gallery" ); foreach ( $pages as $v ) { $next = false; if ( $v == "chat" && $g['options']['chat'] == "N" ) { $next = true; } else if ( $v == "flashchat" && $g['options']['flashchat'] == "N" ) { $next = true; } else if ( $v == "top5" && isset( $g['options']['top5'] ) && $g['options']['top5'] == "N" ) { $next = true; } else if ( $v == "forum" && isset( $g['options']['forum'] ) && $g['options']['forum'] == "N" ) { $next = true; } else if ( $v == "gallery" && isset( $g['options']['gallery'] ) && $g['options']['gallery'] == "N" ) { $next = true; } else if ( $v == "users_hon" && isset( $g['options']['rating'] ) && $g['options']['rating'] == "N" ) { $next = true; } if ( $next ) { $tmp = explode( ".", $p ); if ( $tmp[0] == "users_hon" ) { $pa[0] = "users_hon"; } else { $pa = explode( "_", $tmp[0] ); } if ( $v == $pa[0] ) { $html->parse( "menu_".$v."_active" ); } else { $html->parse( "menu_".$v."" ); } } } } $html->parse( "auth" ); ( $html ); } } class cfooter extends chtmlblock { var $message_template = ""; function cfooter( $name, $html_path ) { $this->chtmlblock( $name, $html_path ); } function parseblock( &$html ) { $html->parse( "auth" ); ( $html ); } } class csearch extends chtmlblock { function csearch( $name, $html_path ) { $this->chtmlblock( $name, $html_path ); } function parseblock( &$html ) { global $g; global $l; global $g_user; $html->setvar( "p_age_from_options", n_options( $g['options']['users_age'], $g['options']['users_age_max'], get_param( "p_age_from", $g['options']['users_age'] ) ) ); $html->setvar( "p_age_to_options", n_options( $g['options']['users_age'], $g['options']['users_age_max'], get_param( "p_age_to", 99 ) ) ); $status = array( "online" => $l['all']['online'], "new" => $l['all']['new'], "birthday" => $l['all']['birthday'], "all" => $l['all']['all'] ); $html->setvar( "status_options", h_options( $status, "all" ) ); if ( isset( $g_user['p_orientation'] ) ) { $html->setvar( "p_orientation", $g_user['p_orientation'] ); $html->parse( "p_orientation", true ); } else { $checks = 0; $this->parsechecks( $html, "p_orientation", "SELECT id, title FROM const_orientation", $checks, 2, 0 ); } $checks = 0; $this->parsechecks( $html, "p_relation", "SELECT id, title FROM const_relation", $checks, 2, 0 ); ( $html ); } function parsechecks( &$html, $name, $sql, $mask, $num_columns = 1, $add = 0 ) { if ( ( $sql ) ) { $i = 0; $total_checks = ( ); $in_column = ceil( ( $total_checks + $add ) / $num_columns ); do { if ( !( $row = ( ) ) ) { break; } else { ++$i; $html->setvar( "id", $row[0] ); $html->setvar( "title", $row[1] ); } if ( $mask & 1 << $row[0] - 1 ) { $html->setvar( "checked", " checked" ); } else { $html->setvar( "checked", "" ); } if ( $i % $in_column == 0 && $i != 0 && ( $i != $total_checks || 0 < $add ) && $num_columns != 1 ) { $html->parse( $name."_column", true ); } else { $html->setblockvar( $name."_column", "" ); } $html->parse( $name, true ); } while ( 1 ); ( ); } } } class cims extends chtmlblock { function cims( $name, $html_path ) { $this->chtmlblock( $name, $html_path ); } function parseblock( &$html ) { global $g; global $g_user; } } class ccomplite extends chtmlblock { var $sMessage = ""; function ccomplite( $name, $html_path ) { $this->chtmlblock( $name, $html_path ); } function parseblock( &$html ) { global $g_options; global $g_user; global $g_news; if ( isset( $this->message ) ) { $html->setvar( "update_message", $this->message ); } $pc = 0; $pe = 0; $p = 0; $p_pc = 0; $p_pe = 0; $p_p = 0; $b_pc = 0; $b_pe = 0; $b_p = 0; $a_pc = 0; $a_pe = 0; $a_p = 0; foreach ( $g_user as $k => $v ) { if ( is_int( $k ) || !( $k != "user_id" ) || !( $k != "register" ) || !( $k != "last_visit" ) || !( $k != "last_ip" ) || !( $k != "password" ) || !( $k != "age" ) || !( $k != "p_relation" ) || !( $k != "active" ) || !( $k != "hidden" ) || !( $k != "active_code" ) || !( substr( $k, 0, 4 ) != "set_" ) || !( substr( $k, -3, 3 ) != "_to" ) || !( $k != "gold_days" ) || !( $k != "hide_time" ) ) { if ( $v == "" || $v == "0" ) { ++$pe; ++$p; } else { ++$pc; ++$p; } if ( substr( $k, 0, 2 ) == "p_" && $k != "p_relation" && substr( $k, -3, 3 ) != "_to" ) { if ( $k == "p_horoscope" ) { if ( $v == 0 ) { ++$p_pe; ++$p_p; } else { ++$p_pc; ++$p_p; } } } else if ( $k == "name" || $k == "mail" || $k == "headline" || $k == "essay" || $k == "birth" || $k == "country_id" || $k == "state_id" || $k == "city_id" ) { if ( $v == "" ) { ++$b_pe; ++$b_p; } else { ++$b_pc; ++$b_p; } } else if ( !( !( $k != "p_relation" ) || !( $k != "active" ) || !( $k != "hidden" ) || !( $k != "active_code" ) || !( $k != "partner" ) ) ) { continue; } else if ( $v == 0 ) { ++$a_pe; ++$a_p; } else { ++$a_pc; ++$a_p; } } } $pc = ceil( $pc / $p * 100 ); $pe = floor( $pe / $p * 100 ); $html->setvar( "pc", $pc ); $html->setvar( "pe", $pe ); if ( $p_p == 0 ) { ++$p_p; } $p_pc = ceil( $p_pc / $p_p * 100 ); $p_pe = floor( $p_pe / $p_p * 100 ); $html->setvar( "p_pc", $p_pc ); $html->setvar( "p_pe", $p_pe ); if ( $b_p == 0 ) { ++$b_p; } $b_pc = ceil( $b_pc / $b_p * 100 ); $b_pe = floor( $b_pe / $b_p * 100 ); $html->setvar( "b_pc", $b_pc ); $html->setvar( "b_pe", $b_pe ); if ( $a_p == 0 ) { ++$a_p; } $a_pc = ceil( $a_pc / $a_p * 100 ); $a_pe = floor( $a_pe / $a_p * 100 ); $html->setvar( "a_pc", $a_pc ); $html->setvar( "a_pe", $a_pe ); ( $html ); } } ?>
C'est vraiment très sympa de ta part de filer un coup de main. Encore merci !
OmaR a dit :
Mais il doit te manquer des noms de fonctions ou je sais pas quoi... Ou sinon y'a des choses que je ne connais pas...Mais je n'ai jamais vu de choses de ce genre:
$total_checks = (); if ( !( $row = ( ) ) ) ();
C'est comme si ça voulait appeler des fonctions, mais que le nom des fonctions n'étaient pas indiquées, et il resterait que les parenthèses...
D'où est-ce que ça vient ton code ?
C'est un ancien salarié de la boite qui nous as fait ce script, il a démissionné pour travailler à l'étranger, j'ai repris le flambeau.
Beaucoup de module du site appel ce script. Avant qu'il parte il l'a fait fonctionner et tout marchait parfaitement. Depuis que j'ai pris mon poste et que j'ai voulu le faire fonctionner... plus rien.
Le problème étant que de nombreuses heures de travail ont déjà été faites pour construire l'intégralité du site et qu'on ne peut pas se permettre de tout recommencer à cause de ce fichu script...
Beaucoup de module du site appel ce script. Avant qu'il parte il l'a fait fonctionner et tout marchait parfaitement. Depuis que j'ai pris mon poste et que j'ai voulu le faire fonctionner... plus rien.
Le problème étant que de nombreuses heures de travail ont déjà été faites pour construire l'intégralité du site et qu'on ne peut pas se permettre de tout recommencer à cause de ce fichu script...
Franchement, ne sachant pas le contexte, vu la claretée du code, et des variables nommés "a_pc", "a_pe" etc... c'est difficile de faire quelque chose.
Pour moi, il y a plein de noms de fonctions qui ont été supprimés (il est parti en bons termes ?
)
Exemple, lignes 136, 154, 188, 193, 196, 200, 228 ou encore 368.
Pour moi, il y a plein de noms de fonctions qui ont été supprimés (il est parti en bons termes ?
)Exemple, lignes 136, 154, 188, 193, 196, 200, 228 ou encore 368.
Lassé par la pub ? Créez un compte
- Contenus similaires :
Tags :