Smilies gedeeltelijk verwijderen

Installatie lukt niet? Plotseling een foutmelding. Of weet je niet hoe iets werkt. Problemen met phpBB2 kun je in dit archief opzoeken.
Forumregels

Sinds 1 januari 2009 wordt phpBB2 niet meer ondersteund.
Onderstaande informatie is verouderd en dient uitsluitend als archief.
phpBB2.0.x
Gesloten
elguapo
Berichten: 6
Lid geworden op: 10 apr 2006, 19:09

Smilies gedeeltelijk verwijderen

Bericht door elguapo » 08 jun 2006, 17:58

Hi :)

Ik heb een tijd lang een smilie-pack gebruikt, maar ben het nu een beetje zat. Heb een nieuwe smilie-style op het oog. Installeren daarvan is geen probleem, maar ik wil niet dat users nog 'oude' smilies kunnen toevoegen. Als ik ze delete dan zijn ze ook niet meer in de oude postings zichtbaar, en dat wil ik wel.

De vraag is dus: hoe kan ik smilies zo verwijderen dat gebruikers ze niet meer kunnen toevoegen, maar ze nog wel in berichten verschijnen?

Gebruikersavatar
Paul
Beheerder
Beheerder
Berichten: 20315
Lid geworden op: 23 okt 2003, 11:38
Locatie: Utrecht
Contacteer:

Bericht door Paul » 08 jun 2006, 18:09

Standaard kan dat niet met phpbb, en heb er helaas ook nog geen mod voor gezien :(

elguapo
Berichten: 6
Lid geworden op: 10 apr 2006, 19:09

Bericht door elguapo » 09 jun 2006, 15:46

Hmm, helaas. Ik kan natuurlijk wel een scriptje maken wat de boel in de database hardcoded veranderd, maar had gehoopt op een nettere oplossing.

elguapo
Berichten: 6
Lid geworden op: 10 apr 2006, 19:09

Bericht door elguapo » 15 jun 2006, 13:36

Heb ff snel een scriptje gemaakt wat alle smilies uit de database haalt en vervangt met een [img] tag.

Code: Selecteer alles

<?php

$dbhost = "localhost";
$dbuser = "";
$dbpass = "";
$db = "";

mysql_connect($dbhost, $dbuser, $dbpass);
mysql_select_db($db); 

// select alle smilies
$smilies = array();
$sql = "SELECT * FROM phpbb_smilies";
$result = mysql_query($sql);
while ($r = mysql_fetch_assoc($result)) {

	$smilies[$r['code']] = $r['smile_url'];

}

// select alle berichten
$sql = "SELECT * FROM phpbb_posts_text";
$result = mysql_query($sql);
while ($r = mysql_fetch_assoc($result)) {

	foreach($smilies as $k => $v) {

		$r['post_text'] = str_replace($k, "[img:".$r['bbcode_uid']."]/phpbb/images/smiles/".$v."[/img:".$r['bbcode_uid']."]", $r['post_text']);
	
	}
	
	
	$sql =	"UPDATE phpbb_posts_text SET post_text = '".$r['post_text']."'".
			"WHERE post_id = ".$r['post_id'];
	mysql_query($sql);

}

?>
Hierna de smilies table leeggemaakt, nieuwe smilies ge-upload en toegevoegd.

Gesloten