Avatar billede fbb Nybegynder
20. februar 2002 - 01:44 Der er 33 kommentarer og
1 løsning

smilyes

Hej, jeg har lige bikset i tagwall sammen.
Men hvordan laver jeg smilyes i? altså når man skriver :) i tekstboxen kommer det ud som en smilye på pint side..
Jeg er ikke så god til php/mysql. så i må godt skære det lidt ud i pap. og måske også vedlægge lidt kode :)

Håber en eller flere kan hjælpe :)
Avatar billede dex_dexter Nybegynder
20. februar 2002 - 01:53 #1
http://www.eksperten.dk/spm/82111

hm.. simpel søgning som jeg sagde til dig....
Avatar billede dex_dexter Nybegynder
20. februar 2002 - 01:53 #2
ellers søg efter smiley & vælg dem fra php kategorien
Avatar billede fbb Nybegynder
20. februar 2002 - 01:57 #3
numsedans! *G* ehm.. en der kan forklare lidt?
Avatar billede Noone Nybegynder
20. februar 2002 - 02:25 #4
$smilies = array(
":)" => "<img src=\"happy.gif\">",
";)" => "<img src=\"wink.gif\">"
);

$message = "See two smilies ;) and :)<br>\n";
$message = strtr($message,$smilies);
echo $message;


So simple... Det største arbejde er nok at lave den der array, og finde/lave billederne.
Avatar billede fbb Nybegynder
20. februar 2002 - 02:46 #5
ehm, array, og finde/lave ikke forstået
Avatar billede fbb Nybegynder
20. februar 2002 - 07:48 #6
Håber der er en i dag der kan hjælpe lidt mer! med lidt forklarning!
Avatar billede hathor Nybegynder
20. februar 2002 - 08:14 #7
Du skal lave et array, hvori der ligger en kode for en smiley på hver plads $smilies = array( starter konstruktionen af dette array.

Så indsætter du ganske simpelt "koden" .. altså det der skal erstattes af en smiley her ":)" og bagefter stien til billedet her => "<img src=\"happy.gif\">". Det bliver du ved med at gøre så længe du har de små dumme ikoner med hver deres kode.

Til tager du bare din tekst, altså det du alligevel ville have udskrevet og siger $message = strtr($tekst,$smilies);

og så udskriver du bare message.

Hvad chanoa mener er, at det tager lang tid at indskrive hver smileys kode. Hvis du ikke forstår det her ved jeg ikke hvordan det skal forklares. Lad iøvrigt være med at give mig fuldt point hvis du vælger at give dette svar point, men hæv point satsen til 30 og giv mig 10 for at have skrevet denne smøre og giv resten til chanoa :-)
Avatar billede torbenmelander Nybegynder
20. februar 2002 - 08:14 #8
";)" => "<img src=\"wink.gif\">"

linier siom denne skal du bare ændre ;) til smilien og wink.gif til navnet på billedet ...
Avatar billede hathor Nybegynder
20. februar 2002 - 08:15 #9
Nu glemte jeg jo at sige at den funktion her gør at visse elementer i en tekst som og er i et bestemt array bliver erstattet med det er er i arrayet $message = strtr($tekst,$smilies);


/Hathor
Avatar billede muddi Praktikant
20. februar 2002 - 08:16 #10
Dette må være den nemmeste løsning.

$message = str_replace(":)", "smiley.gif", $message);
$message = str_replace(":(", "sadley.gif", $message);
$message = str_replace(";)", "twinkley.gif", $message);
etc...

Jeg kan skaffe dig et helt script, som sætter det hele ind, men det kan ikke blive før i eftermiddag!
Avatar billede muddi Praktikant
20. februar 2002 - 08:19 #11
Avatar billede hathor Nybegynder
20. februar 2002 - 11:32 #12
muddi det er da ikke den nemmeste løsning .. jo rent copy paste mæssigt og alligevel ikke .. det er da meget rarere at have skidtet til at ligge i et array som man så bare kan gøre globalt ..
Avatar billede fbb Nybegynder
20. februar 2002 - 13:29 #13
hvor skal jeg sætte det ind i min kode?
Avatar billede fbb Nybegynder
20. februar 2002 - 13:32 #14
Jeg skal kun ha en 3-4 smiley's ind..
Avatar billede fbb Nybegynder
20. februar 2002 - 15:27 #15
<title>Et tagwall af Frederik B-B.</title>
<body bgcolor="000000" text="#ffffff">
<?php            include ("db.php") ;                ?>
<?php            include ("dato.php") ;            ?>
<?php
If($action == "skriv") {
?>
<?php
echo "Besked tilføjet. Læs indlæg <A HREF='tagwallvis.php'>her</A>";
$dato1 = "$dag den $dato. $mnd";
mysql_query("INSERT INTO tagwall (dato, navn, tekst, email, hp) VALUES ('$dato1','$navn','$tekst','$email','$hp')");
?>
<?php
} ELSE {
?>
<form method=post action="<?php echo $PHP_SELF ?>?action=skriv">
Dit navn:<br>
<input type=text name=navn><br>
Din E-mail:<br>
<input type=text name=email><br>
Dit Site<br>
<input type=text name=hp><br>
Besked:<br>
<textarea name=tekst rows="5"></textarea><br>
<input type="image" border="0" name="Submit" src="send.PNG" width="59" height="17" id="submit" / >

</form>
<?php
}
?> en der lige kan sætte den ind her?
Avatar billede hathor Nybegynder
20. februar 2002 - 15:27 #16
du sætter arrayet for oven .. lad os sige du kalder det $smilies

lad os så sige at du nederst på siden udskriver din besked .. som ligger i $tekst .. så skriver du bare

$message = strtr($tekst,$smilies);
echo $message;

Hvis det ikke kan hjælpe dig må du skrive lidt nærmere hvad du ikke forstår
Avatar billede fbb Nybegynder
20. februar 2002 - 15:29 #17
Forstå det ikke.. kan jeg ikke få dig til at sætte det ind i min kode?
Avatar billede hathor Nybegynder
20. februar 2002 - 15:31 #18
<title>Et tagwall af Frederik B-B.</title>
<body bgcolor="000000" text="#ffffff">
<?php            include ("db.php") ;                ?>
<?php            include ("dato.php") ;            ?>
<?php
$smilies = array(
":)" => "<img src=\"happy.gif\">",
";)" => "<img src=\"wink.gif\">");

If($action == "skriv") {
?>
$tekst1 = strtr($tekst,$smilies);

<?php
echo "Besked tilføjet. Læs indlæg <A HREF='tagwallvis.php'>her</A>";
$dato1 = "$dag den $dato. $mnd";
mysql_query("INSERT INTO tagwall (dato, navn, tekst, email, hp) VALUES ('$dato1','$navn','$tekst1','$email','$hp')");
?>
<?php
} ELSE {
?>
<form method=post action="<?php echo $PHP_SELF ?>?action=skriv">
Dit navn:<br>
<input type=text name=navn><br>
Din E-mail:<br>
<input type=text name=email><br>
Dit Site<br>
<input type=text name=hp><br>
Besked:<br>
<textarea name=tekst rows="5"></textarea><br>
<input type="image" border="0" name="Submit" src="send.PNG" width="59" height="17" id="submit" / >

</form>
<?php
}
?>


Så skulle det virke
Avatar billede hathor Nybegynder
20. februar 2002 - 15:36 #19
her er imellem gåseøjnene den form for smiley der bliver lavet om ":)"

=> "<img src=\"happy.gif\">", <------ her er det billede der bliver indsat på siden. Der skal du skrive stien til billedet .. hvis billeder ligger i et bibliotek over din php fil i et bibliotek der hedder pics skal der stå

=> "<img src=\"../pics/happy.gif\">", .... Det virker jo naturligvis ikke hvis du ikke har nogen billeder der kan indsættes .. og mens jeg skriver dette bliver jeg også lidt i tvivl ... denne fil du har pastet her er jo en input fil .. det er muligt det skal gøres på din output fil istedet.

/Hathor
Avatar billede hathor Nybegynder
20. februar 2002 - 15:38 #20
de to smily former der bliver udskiftet nu er så :) og ;)
Avatar billede fbb Nybegynder
20. februar 2002 - 15:41 #21
for fejl og alt muligt du kan lige kigge her: http://www.frederikbb.dk/beta/tagwallvis.php
Avatar billede fbb Nybegynder
20. februar 2002 - 15:45 #22
og fejlen ligger her:
$tekst = strtr($tekst,$smilies);
Avatar billede fbb Nybegynder
20. februar 2002 - 16:02 #23
hmm lukker... hathor du for points...
Avatar billede hathor Nybegynder
20. februar 2002 - 16:08 #24
hehe .. smid tagwallvis herop så skal jeg få det til at funke.
Avatar billede fbb Nybegynder
20. februar 2002 - 17:12 #25
<title>Et tagwall af Frederik B-B.</title>
<body bgcolor="000000" text="#ffffff">

<?php            include ("db.php") ;                ?>
<?php
$foresp = mysql_query("SELECT id, dato, navn, email, hp, tekst FROM tagwall
ORDER BY id DESC");
while($data = mysql_fetch_array($foresp)){

$dato  = $data["dato"];
$navn  = $data["navn"];
$email  = $data["email"];
$hp    = $data["hp"];
$tekst    = $data["tekst"];


?>
<div align="left">
  <table border="0" width="450">
    <tr>
      <td width="225"><font size="1" face="Verdana">Navn:</td>
      <td width="225"><font size="1" face="Verdana"><?php echo $navn; ?></td>
    </tr>
    <tr>
      <td width="225"><font size="1" face="Verdana">Dato:</td>
      <td width="225"><font size="1" face="Verdana"><?php  echo $dato; ?></td>
    </tr>
    <tr>
      <td width="225"><font size="1" face="Verdana">Hjemmeside:</td>
      <td width="225"><font size="1" face="Verdana"><a href=http://<?php echo $hp; ?>><?php echo $hp; ?></a></td>
    </tr>
    <tr>
      <td width="225"><font size="1" face="Verdana">E-mail:</td>
      <td width="225"><font size="1" face="Verdana"><a href="mailto:<?php echo $email; ?>"><?php echo $email; ?></a></td>
    </tr>
<tr>
      <td valign="top" width="225"><font size="1" face="Verdana">Besked:</td>
      <td width="225"><font size="1" face="Verdana"><?php echo $tekst; ?></font></td>
  </table>


<hr width="60%"></div>

<br>


<?
}
?><A HREF="tagwallskriv.php"><font size="1" face="Verdana">Skriv indlæg</font></A>
Avatar billede fbb Nybegynder
20. februar 2002 - 17:12 #26
det er min gamle..
Avatar billede fbb Nybegynder
20. februar 2002 - 18:32 #27
hathor ville du lave den om så den virker?
Avatar billede hathor Nybegynder
20. februar 2002 - 19:35 #28
ja, det vil jeg den er klar klokken 10 i aften
Avatar billede hathor Nybegynder
20. februar 2002 - 19:35 #29
eller klokken 11 måske
Avatar billede fbb Nybegynder
20. februar 2002 - 20:35 #30
ok
Avatar billede hathor Nybegynder
20. februar 2002 - 22:27 #31
her er den .. du får muligvis nogle parse errors har ikke testet den ... Så må du lige se om du kan finde nogle steder det mangler " \ eller ;

<title>Et tagwall af Frederik B-B.</title>
<body bgcolor="000000" text="#ffffff">

<?php            include ("db.php") ;                ?>

<?php

//indsæt koden for smilies herunder

$smilies = array(
":)" => "<img src=\"happy.gif\">",
";)" => "<img src=\"wink.gif\">");


$id1 = mysql_query("SELECT id FROM tagwall ORDER BY id DESC");

$navn1 = mysql_query("SELECT navn FROM tagwall ORDER BY id DESC");

$email1 = mysql_query("SELECT email FROM tagwall ORDER BY id DESC");

$hp1 = mysql_query("SELECT hp FROM tagwall ORDER BY id DESC");

$tekst = mysql_query("SELECT tekst, FROM tagwall ORDER BY id DESC");

while($id2 = mysql_fetch_array($id1)){
      $id[] = id2[0];}

while($navn2 = mysql_fetch_array($navn1)){
    $navn[] = $navn2[0];}

while($email2 = mysql_fetch_array($email1)){
    $email[] = $email2[0];}

while($np2 = mysql_fetch_array($hp1)){
    $hp[] = $hp2[0];}

while($tekst2 = mysql_fetch_array($tekst1)){
    $tekst[] = $tekst2[0];}






for($i=0;$i<count($id);$i++){

$tekst3 = strtr($tekst[$i],$smilies);
echo "<div align=\"left\">";
echo  "<table border=\"0\" width=\"450\">";
    echo "<tr>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">Navn:</td>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">$navn[$i]</td>";
    echo "</tr>";
    echo "<tr>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">Dato:</td>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">$dato[$i]</td>";
    echo "</tr>";
    echo "<tr>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">Hjemmeside:</td>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\"><a href=http://$hp[$i]>$hp[$i]</a></td>";
    echo "</tr>";
    echo "<tr>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">E-mail:</td>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\"><a href=\"mailto:$email[$i]\">$email[$i]</a></td>";
    echo "</tr>";
echo "<tr>";
      echo "<td valign=\"top\" width=\"225\"><font size=\"1\" face=\"Verdana\">Besked:</td>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">$tekst3></font></td>";
  echo "</table>";


echo "<hr width="60%"></div>";

echo "<br>";




echo "<A HREF=\"tagwallskriv.php\"><font size=\"1\" face=\"Verdana\">Skriv indlæg</font></A>";
Avatar billede hathor Nybegynder
20. februar 2002 - 22:28 #32
nos .. sådan her ... fandt lige en fejl mere :-)

<title>Et tagwall af Frederik B-B.</title>
<body bgcolor="000000" text="#ffffff">

<?php            include ("db.php") ;                ?>

<?php

//indsæt koden for smilies herunder

$smilies = array(
":)" => "<img src=\"happy.gif\">",
";)" => "<img src=\"wink.gif\">");


$id1 = mysql_query("SELECT id FROM tagwall ORDER BY id DESC");

$navn1 = mysql_query("SELECT navn FROM tagwall ORDER BY id DESC");

$email1 = mysql_query("SELECT email FROM tagwall ORDER BY id DESC");

$hp1 = mysql_query("SELECT hp FROM tagwall ORDER BY id DESC");

$tekst = mysql_query("SELECT tekst, FROM tagwall ORDER BY id DESC");

while($id2 = mysql_fetch_array($id1)){
      $id[] = id2[0];}

while($navn2 = mysql_fetch_array($navn1)){
    $navn[] = $navn2[0];}

while($email2 = mysql_fetch_array($email1)){
    $email[] = $email2[0];}

while($np2 = mysql_fetch_array($hp1)){
    $hp[] = $hp2[0];}

while($tekst2 = mysql_fetch_array($tekst1)){
    $tekst[] = $tekst2[0];}






for($i=0;$i<count($id);$i++){

$tekst3 = strtr($tekst[$i],$smilies);
echo "<div align=\"left\">";
echo  "<table border=\"0\" width=\"450\">";
    echo "<tr>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">Navn:</td>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">$navn[$i]</td>";
    echo "</tr>";
    echo "<tr>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">Dato:</td>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">$dato[$i]</td>";
    echo "</tr>";
    echo "<tr>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">Hjemmeside:</td>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\"><a href=http://$hp[$i]>$hp[$i]</a></td>";
    echo "</tr>";
    echo "<tr>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">E-mail:</td>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\"><a href=\"mailto:$email[$i]\">$email[$i]</a></td>";
    echo "</tr>";
echo "<tr>";
      echo "<td valign=\"top\" width=\"225\"><font size=\"1\" face=\"Verdana\">Besked:</td>";
      echo "<td width=\"225\"><font size=\"1\" face=\"Verdana\">$tekst3></font></td>";
  echo "</table>";


echo "<hr width="60%"></div>";

echo "<br>";}




echo "<A HREF=\"tagwallskriv.php\"><font size=\"1\" face=\"Verdana\">Skriv indlæg</font></A>";
Avatar billede fbb Nybegynder
20. februar 2002 - 22:52 #33
Det virker.. efter jeg rettet ldit fejl :)
ehm.. dato bliver ikke vist!!
Avatar billede fbb Nybegynder
20. februar 2002 - 22:55 #34
Den fik jeg selv sat på :) mange tak for hjælpen :)
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester