[php] Alleen laatste smile...

Pagina: 1
Acties:

  • Tobiaz
  • Registratie: Februari 2001
  • Laatst online: 21-01-2023

Tobiaz

Ondertitel

Topicstarter
Ik heb een gastenboek gemaakt (*goh jij ook? ja ik ook...*) en daar wil ik natuurlijk ook smiles in hebben, nou jah ik weet hoe dat werkt, en 1 smile presenteren is ook geen probleem... alleen als ik meerdere wel invoegen neemt hij alleen de laatst aangewezen smile in mijn code
PHP:
1
2
3
4
5
6
7
8
9
$Bericht = str_replace(':\)','[img]images/smiles/smile.gif>',[/img]Bericht ); 
$Bericht = str_replace(':\)','[img]images/smiles/mad.gif>',[/img]Bericht );
$Bericht = str_replace(':x','[img]images/smiles/shutup.gif>',[/img]Bericht );
$Bericht = str_replace('>:)','[img]images/smiles/devil.gif>',[/img]Bericht );
$Bericht = str_replace(':P','[img]images/smiles/puh2.gif>',[/img]Bericht );
$Bericht = str_replace(':p','[img]images/smiles/puh2.gif>',[/img]Bericht );
$Bericht = str_replace(':+','[img]images/smiles/clown.gif>',[/img]Bericht );
$Bericht = str_replace(':D','[img]images/smiles/biggrin.gif>',[/img]Bericht );
$Bericht = str_replace(':d','[img]images/smiles/biggrin.gif>',[/img]Bericht );

enz.

Hij zou nu alleen :d laten zien dus biggrin.gif en als ik bij wijze van spreken ook :x en :+ zou doen, dan doen die 2 het niet!

Overigens ik heb ook het idee dat smiles met een "(" of een ")" het niet doen....

Kan iemand mij zeggen wat ik verkeerd doe?

Onder een steen geleefd dan maar ;-)


  • .oisyn
  • Registratie: September 2000
  • Nu online

.oisyn

Moderator Devschuur®

Demotivational Speaker

duh, je pakt steeds $obj->Bericht als source, maar dat sla je niet weer op in $obj->Bericht, maar in $Bericht

je kunt trouwens ook gewoon arrays meegeven, dan hoef je maar 1x str_replace aan te roepen (zie www.php.net/str_replace)

Give a man a game and he'll have fun for a day. Teach a man to make games and he'll never have fun again.


Verwijderd

PHP:
1
2
3
4
5
6
7
8
9
10
$bericht = $obj->Bericht;
$Bericht = str_replace(':\)','[img]images/smiles/smile.gif[/img]', $bericht ); 
$Bericht = str_replace(':\)','[img]images/smiles/mad.gif[/img]', $bericht );
$Bericht = str_replace(':x','[img]images/smiles/shutup.gif[/img]', $bericht );
$Bericht = str_replace('>:)','[img]images/smiles/devil.gif[/img]', $bericht );
$Bericht = str_replace(':P','[img]images/smiles/puh2.gif[/img]', $bericht );
$Bericht = str_replace(':p','[img]images/smiles/puh2.gif[/img]', $bericht );
$Bericht = str_replace(':+','[img]images/smiles/clown.gif[/img]', $bericht );
$Bericht = str_replace(':D','[img]images/smiles/biggrin.gif[/img]', $bericht );
$Bericht = str_replace(':d','[img]images/smiles/biggrin.gif[/img]', $bericht );


Idd dit werkt :+

  • Tobiaz
  • Registratie: Februari 2001
  • Laatst online: 21-01-2023

Tobiaz

Ondertitel

Topicstarter
errr oke :) Dat klopt weer als een bus :D Thx


[edit]

Xentic, dat werkt toch niet.... als ik niet $obj->Bericht doe, dan spreekt hij mn bericht niet meer aan omdat ik de waarde van de velden in Bericht aanspreek via $obj->bericht; dus dat werkt toch niet helemaal...

[ Voor 0% gewijzigd door Tobiaz op 28-09-2002 20:19 . Reden: werkt toch niet ]

Onder een steen geleefd dan maar ;-)


Verwijderd

Tobiaz schreef op 28 september 2002 @ 20:14:
errr oke :) Dat klopt weer als een bus :D Thx


[edit]

Xentic, dat werkt toch niet.... als ik niet $obj->Bericht doe, dan spreekt hij mn bericht niet meer aan omdat ik de waarde van de velden in Bericht aanspreek via $obj->bericht; dus dat werkt toch niet helemaal...
Tis XTENTIC maar dan met kleine letters en idd je moet de case ff aanpassen :)

al zou ik wel eens willen zien hoe .oisyn het met arrays oplost ;)

  • Tobiaz
  • Registratie: Februari 2001
  • Laatst online: 21-01-2023

Tobiaz

Ondertitel

Topicstarter
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<?php
include ("database.inc.php");
$query = "SELECT Naam,Mail,Bericht,Id,Datum FROM guestbook ORDER BY Id DESC LIMIT 0,10";
$resultaat = mysql_query($query) or die ("Het is niet gelukt. Druk op uw terug knop"); 
while ($obj = mysql_fetch_object($resultaat))
{ 
$bericht = $obj->Bericht;
$Bericht = str_replace(':=)','[img]images/smiles/smile.gif>',[/img]Bericht ); 
$Bericht = str_replace(':=(','[img]images/smiles/mad.gif>',[/img]Bericht );
$Bericht = str_replace(':x','[img]images/smiles/shutup.gif>',[/img]Bericht );
?>
<center>

<table border="1" cellspacing="0" cellpadding="0" 
bordercolorlight="#F9F393" bordercolordark="#000000" bgcolor="#808080">
<tr>
    <td width="200"><b>Naam:</b>&nbsp;<?php echo $obj->Naam; $count++; ?></td>
<td width="200"><b>E-Mail:</b>&nbsp;<?php echo $obj->Mail;?></td>
</tr>
<tr>
    <td colspan="2" width="500"><?php echo $obj->Datum; ?></td> 
</tr>
<tr>
    <td colspan="2" width="500"><b>Bericht:</b><br><?php echo nl2br($Bericht);?></td>
</tr>
<tr><td>ip adres: </td></tr>
</table>
<P><center> ****</center>
<p>
<?php
}
?>


Hoe moet ik het bericht dan aanspreken als ik de case moet veranderen? Ik weet niet anders of het gaat met ($obj = mysql_fetch_object($resultaat))


** sorry voor de rommel ;(

[ Voor 0% gewijzigd door Tobiaz op 28-09-2002 20:29 . Reden: nog meer rommel, maar anders layout verneuk ]

Onder een steen geleefd dan maar ;-)


  • marcusk
  • Registratie: Februari 2001
  • Laatst online: 26-09-2023
Verwijderd schreef op 28 september 2002 @ 20:20:al zou ik wel eens willen zien hoe .oisyn het met arrays oplost ;)
PHP:
1
2
3
$from = array(":)", ";", ":D", ...);
$to = array("smilies/smile.gif", "smilies/wink.gif", "smilies/bigsmile.gif");
$bericht = str_replace($from, $to, $bericht);

  • Ericston
  • Registratie: Maart 2001
  • Laatst online: 05-08 18:36
Ok, nog één reply dan.

Dat van die case veranderen is bullshit. PHP is case-insensitive.
Tobiaz, leer logisch nadenken. Wat doe je hier?
PHP:
1
2
3
4
$bericht = $obj->Bericht;
$Bericht = str_replace(':=)','[img]images/smiles/smile.gif>',[/img]Bericht ); 
$Bericht = str_replace(':=(','[img]images/smiles/mad.gif>',[/img]Bericht );
$Bericht = str_replace(':x','[img]images/smiles/shutup.gif>',[/img]Bericht );
Let op...
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
$obj->Bericht = 'ladieda :=) :=( lala :x la';
// $obj->Bericht == 'ladieda :=) :=( lala :x la';
// $bericht == '';
$bericht = $obj->Bericht;
// $obj->Bericht == 'ladieda :=) :=( lala :x la';
// $bericht == 'ladieda :=) :=( lala :x la';
$Bericht = str_replace(':=)','<smile>', $obj->Bericht ); 
// $obj->Bericht == 'ladieda :=) :=( lala :x la';
// $bericht == 'ladieda <smile> :=( lala :x la';
$Bericht = str_replace(':=(','<mad>', $obj->Bericht );
// $obj->Bericht == 'ladieda :=) :=( lala :x la';
// $bericht == 'ladieda :=) <mad> lala :x la';
$Bericht = str_replace(':x','<shutup>', $obj->Bericht );
// $obj->Bericht == 'ladieda :=) :=( lala :x la';
// $bericht == 'ladieda :=) :=( lala <shutup> la';
echo $obj->Bericht; // 'ladieda :=) :=( lala :x la';
echo $bericht; // 'ladieda :=) :=( lala <shutup> la';
Dat werkt dus niet. Ik raad je aan de handleiding te lezen (in het specifiek over objecten en variabelen in PHP).
Voor de rest ben je op het goeie spoor. :)
Pagina: 1