erreur de code plus d'accès à mon site

Petit nouveau ! | 9 Messages

03 déc. 2011, 19:22

Bonjour j'ai un un problème qui emp^che l'accès à mon site. Je ne comprend pas car je n'ai fait aucune modifs dessus

Voici le code la dernière ligne est la ligne 1411

// from php.net (modified by Mark Jaquith to behave like the native PHP5 function)
function _http_build_query($data, $prefix=null, $sep=null, $key='', $urlencode=true) {
$ret = array();

foreach ( (array) $data as $k => $v ) {
if ( $urlencode)
$k = urlencode($k);
if ( is_int($k) && $prefix != null )
$k = $prefix.$k;
if ( !empty($key) )
$k = $key . '%5B' . $k . '%5D';
if ( $v === NULL )
continue;
elseif ( $v === FALSE )
$v = '0';

if ( is_array($v) || is_object($v) )
array_push($ret,_http_build_query($v, '', $sep, $k, $urlencode));
elseif ( $urlencode )
array_push($ret, $k.'='.urlencode($v));
else
array_push($ret, $k.'='.$v);
}

if ( NULL === $sep )
$sep = ini_get('arg_separator.output');

return implode($sep, $ret);
}

mon navigateur affiche :
Fatal error: Cannot redeclare _http_build_query() (previously declared in /homez.424/ludovica/www/WordPress3/wp-includes/compat.php:18) in /homez.424/ludovica/www/WordPress3/wp-includes/functions.php on line 1411

lorsque je veux accéder à mon site http://ludovicamiot-photographies.com/WordPress3/index

Si quelqun à une solution à me donner

merci

ViPHP
xTG
ViPHP | 7331 Messages

03 déc. 2011, 20:26

Tu as dans ton code deux fois la déclaration de la fonction.
Une à la ligne 1411 du fichier functions.php et une à la ligne 18 du fichier compat.php

Petit nouveau ! | 9 Messages

03 déc. 2011, 21:53

en gros que dois-je faire pour résoudre le problème sachant que l'instruction est en ligne 1410, il y a juste une accolade sur la ligne 1411

l'instruction de la ligne 18 du fichier compat.php est

function _http_build_query($data, $prefix=null, $sep=null, $key='', $urlencode=true) {

est_ce que je dois remettre cette instruction en ligne 1411 du fichier function.php?

merci

ViPHP
ViPHP | 1996 Messages

03 déc. 2011, 22:05

Il faut que tu ne déclares qu'une seule fois la fonction.
Positionne là où tu veux.
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Petit nouveau ! | 9 Messages

03 déc. 2011, 22:14

en mettant la ligne 18 de compat.php en 1411 de functions.php le message d'erreur est le suivant


Fatal error: Cannot redeclare _http_build_query() (previously declared in /homez.424/ludovica/www/WordPress3/wp-includes/compat.php:18) in /homez.424/ludovica/www/WordPress3/wp-includes/functions.php on line 1411

Petit nouveau ! | 9 Messages

03 déc. 2011, 22:23

merci pour la réponse Aureusms, la ligne existe déjà dans compat.php car si je comprend bien le message en la mettant ligne 1411 de functions.php le message d'erreur me dit alors que je ne peux pas répèter 2 fois la même instruction vu qu'elle existe déjà précédemment


Autre question, comment est-il possible que je me retrouve avec cette erreur alors que mon site marchait très bien et que ne connaissant pas le PHP je ne suis jamais allé bidouillé quoi que ce soit

ViPHP
ViPHP | 1996 Messages

03 déc. 2011, 22:34

Pour la première question : c'est ca une fonction ne doit être déclarée qu'une seule fois quelque soit l'endroit.
Pour la seconde, bah là je ne sais pas... Essaye de renommer la première ou deuxième fonction pour ne pas l'effacer. Si tu as un message te dis qu'il ne trouve pas la fonction que tu as renommée, c'est que la fonction est nécessaire. Sinon tu peux l'effacer. Avant de l'effacer, je la mettrais en commentaires (entre /* et */). De ce fait, elle ne sera pas retenu en tant que fonction mais toujours présentes au cas où.
Les bouts de codes, ne se créé pas tout seul (sauf dans Tron Legacy). Es tu le seul à travailler sur ce site ? As tu récemment rajouter un bout de code ?

Perso, je mets les fonction toujours au même endroit cela évite ce genre de problème
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Petit nouveau ! | 9 Messages

03 déc. 2011, 22:42

je te remercie pour ces infos, juste une dernière question qu'appelle tu fonction et comment la renommer? Je vais essayer demain de mettre en sommeil la ligne dans le fichier compat.php et la remettre dans le fichier function après la ligne 1411


Pour répondre à ta question, je suis le seul à travailler sur mon site, qui est un wordpress hébergé chez OVH

Petit nouveau ! | 9 Messages

03 déc. 2011, 22:53

j'ai essayé voilà le message que j'ai

Parse error: syntax error, unexpected T_FUNCTION, expecting '{' in /homez.424/ludovica/www/WordPress3/wp-includes/functions.php on line 1430


si je supprime l'instruction dans les deux fichiers voilà le message d'erreur


Warning: call_user_func_array() [function.call-user-func-array]: First argument is expected to be a valid callback, 'wp_maybe_load_embeds' was given in /homez.424/ludovica/www/WordPress3/wp-includes/plugin.php on line 395

Warning: Cannot modify header information - headers already sent by (output started at /homez.424/ludovica/www/WordPress3/wp-includes/plugin.php:395) in /homez.424/ludovica/www/WordPress3/wp-includes/pluggable.php on line 934

:cry: là je craque d'autant que j'ai besoin que mon site tourne

Petit nouveau ! | 9 Messages

03 déc. 2011, 23:03

en plus ai fait petite boulette dans compat.php

j'avais mis la ligne 18 entre /* et */
les lignes 17 à 25 indiquent

// from php.net (modified by Mark Jaquith to behave like the native PHP5 function)
function _http_build_query($data, $prefix=null, $sep=null, $key='', $urlencode=true {
$ret = array();

foreach ( (array) $data as $k => $v ) {
if ( $urlencode)
$k = urlencode($k);
if ( is_int($k) && $prefix != null )
$k = $prefix.$k;

je crois n'avoir que retiré les /* et */ et maintenant le message d'erreur indique
Parse error: syntax error, unexpected '{', expecting ')' in /homez.424/ludovica/www/WordPress3/wp-includes/compat.php on line 19 j'ai du effacer un caractère ou en oublier un mais je ne trouve ni lequel ni où

AU SECOURs :priere:

merci

Sinon si je comprend bien la dernière solution sera de sésinstaller mon CMS et en réinstaller un

ViPHP
ViPHP | 1996 Messages

04 déc. 2011, 00:42

il manque une paranthèses fermantes :

function _http_build_query($data, $prefix=null, $sep=null, $key='', $urlencode=true ) {
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

ViPHP
ViPHP | 1996 Messages

04 déc. 2011, 00:43

Si je reprends ton code précédent les /* et */ seriat à mettre ici :

/*
// from php.net (modified by Mark Jaquith to behave like the native PHP5 function)
function _http_build_query($data, $prefix=null, $sep=null, $key='', $urlencode=true) {
$ret = array();

foreach ( (array) $data as $k => $v ) {
if ( $urlencode)
$k = urlencode($k);
if ( is_int($k) && $prefix != null )
$k = $prefix.$k;
if ( !empty($key) )
$k = $key . '%5B' . $k . '%5D';
if ( $v === NULL )
continue;
elseif ( $v === FALSE )
$v = '0';

if ( is_array($v) || is_object($v) )
array_push($ret,_http_build_query($v, '', $sep, $k, $urlencode));
elseif ( $urlencode )
array_push($ret, $k.'='.urlencode($v));
else
array_push($ret, $k.'='.$v);
}

if ( NULL === $sep )
$sep = ini_get('arg_separator.output');

return implode($sep, $ret);
}
*/

afin d'englober toute la fonction
It is nice to be important but it is more important to be nice
http://www.aureuswebfactory.fr

Petit nouveau ! | 9 Messages

04 déc. 2011, 13:29

Bonjour Aureusms,

merci pour ces derniers précieux conseils, cela m'a permis de corriger les erreurs liées au fichier functions.php. Las! ce n'est pas la seule erreur, j'ai enfin compris ce qui c'est passé enfin je pense. Cette semaine j'ai voulu activer un plug-in word press sur mon site, errare humanum est!, comme il ne fonctionnait pas correctement je l'ai désactivé. Mon site semblait encore marcher normalement après ça, et pourtant ...

Après avoir effectué les correction que tu m'as données, (je commence à comprendre la structure du PhP mais de là à devenir un pro loin de moi cette idée), ma demande d'url http://ludovicamiot-photographies.com/WordPress3/index a moulinée plus lentement, je croyais au miracle et ben :non: :? :(

Voilà le nouveau message si je comprend bien cela est lié maintenant à un soucis dans le code des fichiers plugin.php et plugable.php ce qui me fait dire que le problème viendrait d'un plug-in:

Warning: call_user_func_array() [function.call-user-func-array]: First argument is expected to be a valid callback, 'wp_maybe_load_embeds' was given in /homez.424/ludovica/www/WordPress3/wp-includes/plugin.php on line 395

Warning: Cannot modify header information - headers already sent by (output started at /homez.424/ludovica/www/WordPress3/wp-includes/plugin.php:395) in /homez.424/ludovica/www/WordPress3/wp-includes/pluggable.php on line 934

Bon là je vais pas embêter plus tout le monde, et puis avec mes faibles connaissance, une erreur en génère une autre, ne ferais-je pas mieux de désinstaller mon CMS et de le réinstaller donc de refaire tout mon site. Tâche longue mais sans doute moins longue que de chercher à corriger les erreurs les unes après les autres 8-|

Je te remercie mille fois, dès que j'ai le temps je vais me mettre au php pour comprendre ce que je fais...