[Réglé] forum 2.0.20 : "citer" un mp: rien[reglé]

Le forum de support pour les questions concernant l'utilisation de phpBB2, les problèmes rencontrés au cours de telle ou telle manipulation du forum, ou les changements que vous souhaiteriez effectuer.

Modérateur : Équipe

Règles du forum
A lire impérativement sur notre page : Règlement

Pensez à effectuer une recherche et à prendre connaissance du forum de documentation, la réponse à votre question a de grandes chances de s'y trouver.

- Plus aucun support n'est délivré pour phpBB2 depuis le 1er janvier 2009
Verrouillé
Avatar du membre
RazorBack
Apprenti-posteur
Apprenti-posteur
Messages : 146
Enregistré le : 25 avr. 2005 à 18:12

forum 2.0.20 : "citer" un mp: rien[reglé]

Message par RazorBack »

Salut à vous,

voilà mon problème, quand je cite un message privé que j'aurais reçu (bouton citer en haut à droite), il m'affiche:

Code : Tout sélectionner

[quote="auteur"][/quote]
Il n'y a PAS le message dans les balises....
j'ignore comment ça se fait, et je sais pas du tout où regarder dans le fichier privmsg.php....

Si vous voulez regarder, j'vous le met en archive ici.

Merci beaucoup :) à ceux qui sauraient m'aider[/code]
Modifié en dernier par RazorBack le 20 avr. 2006 à 18:33, modifié 1 fois.
mortimer2
Dieu des floodeurs
Dieu des floodeurs
Messages : 7023
Enregistré le : 18 mai 2005 à 02:09

Message par mortimer2 »

Ce ne serait pas relatif à ça, par hasard ?
http://forums.phpbb-fr.com/viewtopic.ph ... 032#762032

Salut
madinsarko
Posteur néophyte
Posteur néophyte
Messages : 17
Enregistré le : 19 avr. 2006 à 15:11

Message par madinsarko »

Bonjour,

J'ai le même problème.
Ca se passe ici :

Code : Tout sélectionner

if ( $mode == 'quote' )
			{
				$privmsg_message = $privmsg['privmsgs_text'];
				$privmsg_bbcode_uid = $privmsg['privmsgs_bbcode_uid'];

				$privmsg_message = preg_replace("/\:(([a-z0-9]:)?)$privmsg_bbcode_uid/si", '', $privmsg_message);
				$privmsg_message = str_replace('<br />', "\n", $privmsg_message);
				$privmsg_message = preg_replace('#</textarea>#si', '</textarea>', $privmsg_message);
				$privmsg_message = preg_replace($orig_word, $replacement_word, $privmsg_message);
				
				$msg_date =  create_date($board_config['default_dateformat'], $privmsg['privmsgs_date'], $board_config['board_timezone']); 

				$privmsg_message = '[quote="' . $to_username . '"]' . $privmsg_message . '[/quote]';

				$mode = 'reply';
			}

Et plus exactement à cette ligne :
$privmsg_message = preg_replace($orig_word, $replacement_word, $privmsg_message);



Par ailleurs, il n'y aurait pas un problème dans le nom de la variable passée en paramètre de la fonction obtain_word_list ?

$replace_word n'existe nulle part. J'y verrai plutot un $replacement_word

Code : Tout sélectionner

		else if ( $mode == 'edit' )
		{
			$sql = "SELECT pm.*, pmt.privmsgs_bbcode_uid, pmt.privmsgs_text, u.username, u.user_id, u.user_sig 
				FROM " . PRIVMSGS_TABLE . " pm, " . PRIVMSGS_TEXT_TABLE . " pmt, " . USERS_TABLE . " u
				WHERE pm.privmsgs_id = $privmsg_id
					AND pmt.privmsgs_text_id = pm.privmsgs_id
					AND pm.privmsgs_from_userid = " . $userdata['user_id'] . "
					AND ( pm.privmsgs_type = " . PRIVMSGS_NEW_MAIL . " 
						OR pm.privmsgs_type = " . PRIVMSGS_UNREAD_MAIL . " ) 
					AND u.user_id = pm.privmsgs_to_userid";
			if ( !($result = $db->sql_query($sql)) )
			{
				message_die(GENERAL_ERROR, 'Could not obtain private message for editing', '', __LINE__, __FILE__, $sql);
			}

			if ( !($privmsg = $db->sql_fetchrow($result)) ) 
         	{ 
            	redirect(append_sid("privmsg.$phpEx?folder=$folder", true)); 
         	} 

	        $orig_word = $replacement_word = array(); 
    	    obtain_word_list($orig_word, $replace_word); 
	
    	    $privmsg_subject = ( ( !preg_match('/^Re:/', $privmsg['privmsgs_subject']) ) ? 'Re: ' : '' ) . $privmsg['privmsgs_subject']; 
        	$privmsg_subject = preg_replace($orig_word, $replacement_word, $privmsg_subject);
			$privmsg_message = $privmsg['privmsgs_text'];
			$privmsg_bbcode_uid = $privmsg['privmsgs_bbcode_uid'];
			$privmsg_bbcode_enabled = ($privmsg['privmsgs_enable_bbcode'] == 1);
Avatar du membre
RazorBack
Apprenti-posteur
Apprenti-posteur
Messages : 146
Enregistré le : 25 avr. 2005 à 18:12

Message par RazorBack »

mortimer2 a écrit :Ce ne serait pas relatif à ça, par hasard ?
http://forums.phpbb-fr.com/viewtopic.ph ... 032#762032

Salut
Ah en effet, ce problème était bien préoccupant, mais n'affectait que la visibilité, le problème étant dû à une absence de quelque chose pour mettre le nom de l'utilisateur (cf mod efficient color, je crois me rappeller).

Ici, les messages s'affichent correctement dans ma boite de réception, le problème est plutôt une "citation" qui ne fonctionne pas.
Est-ce dû au passage à phpbb 2.0.20, je ne saurais l'affirmer, car je n'ai pas regardé si j'avais ce bug auparavant ....

En tout cas, c'est uniquement la fonction "citer" qui a un problème.

Madinsarko: et tu as la version 2.0.20 ou pas? car la citation "normale" a eu son fix pour la mise à jour, mais peut-être qu'il y a le même genre de problème dans les messages privés si c'est pour toi aussi 2.0.20 ...
madinsarko
Posteur néophyte
Posteur néophyte
Messages : 17
Enregistré le : 19 avr. 2006 à 15:11

Message par madinsarko »

Oui, je suis en 2.0.20
Oui, c'est la citation dans les MP qui ne fonctionne pas
Oui, je suis certain que cela fonctionnait avec la 2.0.19
madinsarko
Posteur néophyte
Posteur néophyte
Messages : 17
Enregistré le : 19 avr. 2006 à 15:11

Message par madinsarko »

Une erreur dans la modification de privmsg.php
J'ai suivi ces instructions et ça marche :D

Code : Tout sélectionner

# 
#-----[ OPEN ]------------------------------------------------ 
# 
privmsg.php 
# 
#-----[ FIND ]------------------------------------------------ 
# Line 1505 
         if ( !($privmsg = $db->sql_fetchrow($result)) ) 
         { 
            redirect(append_sid("privmsg.$phpEx?folder=$folder", true)); 
         } 
# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
# Add these lines on a new blank line after the preceding line(s) to find 
# 

         $orig_word = $replacement_word = array(); 
         obtain_word_list($orig_word, $replace_word); 
# 
#-----[ FIND ]------------------------------------------------ 
# Line 1512 
         $to_username = $privmsg['username']; 
         $to_userid = $privmsg['user_id']; 

         if ( $mode == 'quote' ) 
         { 
# 
#-----[ BEFORE, ADD ]----------------------------------------- 
# 
         $privmsg_subject = preg_replace($orig_word, $replacement_word, $privmsg_subject); 

# 
#-----[ FIND ]------------------------------------------------ 
# Line 1522 
            $privmsg_message = preg_replace("/\:(([a-z0-9]:)?)$privmsg_bbcode_uid/si", '', $privmsg_message); 
            $privmsg_message = str_replace('<br />', "\n", $privmsg_message); 
            $privmsg_message = preg_replace('#</textarea>#si', '</textarea>', $privmsg_message); 
# 
#-----[ AFTER, ADD ]------------------------------------------ 
# 
# Add these lines on a new blank line after the preceding line(s) to find 
# 
            $privmsg_message = preg_replace($orig_word, $replacement_word, $privmsg_message); 
# 
#-----[ SAVE/CLOSE ALL FILES ]-------------------------------- 
# 
# EoM 
Avatar du membre
RazorBack
Apprenti-posteur
Apprenti-posteur
Messages : 146
Enregistré le : 25 avr. 2005 à 18:12

Message par RazorBack »

Yes! MERCI. Difficile à modifier (les lignes à rechercher sont en double exemplaire, et dès qu'on a des mods, le n° des lignes changent), mais finalement, j'ai trouvé et j'ai corrigé :D
Verrouillé

Retourner vers « Utilisation »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 2 invités