Emoticons & Naam linken naar email!

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Mathieu Posthumus

Mathieu Posthumus

04/02/2014 13:48:03
Quote Anchor link
Hallo ik ben Mathieu,

Ik ben bezig met een best grote opdracht voor zo'n kleine beginnerling als ik,
ik heb net een gastenboek gemaakt maar nu moet ik ook nog een aantal dingen eraan toevoegen.

Ik moet dus de de naam die wordt opgegeven door de gebruiker moet ik naar de email die hij/zij zelf heeft opgegeven laten linken.
Ik ben de hoeveel gaan doorzoeken met Regexp alleen daar kan ik niks uit vinden voor mijn bedoelingen.
En het 2e ding dat erbij moet komen is, dat ik als de gebruiker zijn bericht achterlaat en die persoon wil een smilie eraan toevoegen dan moet hij Voorbeeld:( :) = Afbeelding )


Hopelijk kunnen jullie me hierbij helpen!
 
PHP hulp

PHP hulp

24/11/2024 09:18:20
 
Michael -

Michael -

04/02/2014 13:55:59
Quote Anchor link
ik snap je niet wat je hiermee bedoelt
"Ik moet dus de de naam die wordt opgegeven door de gebruiker moet ik naar de email die hij/zij zelf heeft opgegeven laten linken."
Je wilt het e-mailadres bij de naam houden? Als je het opslaat in een database moet dit geen probleem zijn. Geen idee waarom je dan over regexp begint.

Antwoord op je 2e vraag is UBB. Zoek op UBB
 
Mathieu Posthumus

Mathieu Posthumus

04/02/2014 14:29:45
Quote Anchor link
Michael - op 04/02/2014 13:55:59:
ik snap je niet wat je hiermee bedoelt
"Ik moet dus de de naam die wordt opgegeven door de gebruiker moet ik naar de email die hij/zij zelf heeft opgegeven laten linken."
Je wilt het e-mailadres bij de naam houden? Als je het opslaat in een database moet dit geen probleem zijn. Geen idee waarom je dan over regexp begint.

Antwoord op je 2e vraag is UBB. Zoek op UBB


Ik bedoel met de Naam en de E-Mail...


Als je dus de op de site kom zie je de Naam, Datum, en het Bericht.
Maar als je op de naam klikt Bijvoorbeeld: ( Piet en heeft een email opgegeven dat [email protected] zal zijn, dan zal dat onder naam moeten komen te staan.

Toevoeging op 04/02/2014 14:43:17:

En dat over de emoticons snap ik niet echt hoe dat word uitgelegd misschien dat je me daar mee kan helpen?
 
Michael -

Michael -

04/02/2014 15:12:10
Quote Anchor link
Ik heb het gevoel dat je de lat een beetje erg hoog legt voor je zelf.
Met een gastenboek heb je een database (of in sommige gevallen een tekst bestand) waarin je je gegevens opslaat, naam, e-mailadres, bericht. Het e-mailadres haal je het zelfde op als de naam en het bericht.

Als je op "Zoek op UBB" had geklikt en de resultaten had doorgenomen zie je o.a. een script waar het volgende in staat
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$bericht = str_replace(" :)"," <img src=\"images/smilies/smile.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" 8|"," <img src=\"images/smilies/huh.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" :o"," <img src=\"images/smilies/ohmy.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" ;)"," <img src=\"images/smilies/wink.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" :P"," <img src=\"images/smilies/tongue.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" :D"," <img src=\"images/smilies/biggrin.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" 8)"," <img src=\"images/smilies/cool.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" *-)"," <img src=\"images/smilies/rolleyes.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" :?"," <img src=\"images/smilies/dry.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" :@"," <img src=\"images/smilies/mad.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" :("," <img src=\"images/smilies/sad.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" 8-)"," <img src=\"images/smilies/unsure.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" :|"," <img src=\"images/smilies/blink.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" |:-|"," <img src=\"images/smilies/ph34r.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" :/"," <img src=\"images/smilies/happy.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" |-)"," <img src=\"images/smilies/sleep.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" (l)"," <img src=\"images/smilies/wub.gif\" alt=\"Smilie\" />",$bericht);
 $bericht = str_replace(" :s"," <img src=\"images/smilies/wacko.gif\" alt=\"Smilie\" />",$bericht);

Hier in is $bericht het bericht dat je wilt weergeven. en :) e.d. worden vervangen door de afbeeldingen die erachter staat.
 
Mathieu Posthumus

Mathieu Posthumus

04/02/2014 20:59:16
Quote Anchor link
Michael zou je het goed vinden als ik even mijn code stuur want hij geeft bij mij deze fout aan:
Notice: Undefined variable: bericht in C:\xampp\htdocs\School\php\extra\afsluitende toets\index.php on line 34

Code:

<!DOCTYPE html>
<html>
<head>
<title>Afsluitende Toets!</title>
</head>
<body>
<form action="index.php" method="post">
<table border="1">
<tr>
<td>Naam:</td>
<td><input type="text" name="naam"></td>
</tr>
<tr>
<td>E-Mail:</td>
<td><input type="email" name="email"></td>
</tr>
<tr>
<td><width="150px" height="50px">Bericht</td>
<td><textarea name="bericht"></textarea></td>
</tr>
</table>
<input type="submit" value="Post">
<input type="reset" value="Reset">
</form>

<!-- DataBase Connnectie! -->
Code (php)
PHP script in nieuw venster Selecteer het PHP script
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
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
<?php
        $connection
= null;
        
            if(isset ($_POST["naam"]) and isset ($_POST["email"]) and isset ($_POST["bericht"])){
                dbConnect();
                dbSave();
                mysql_close($GLOBALS["connection"]);
                $bericht = str_replace(" :)"," <img src=\"smileys/smile.gif\" alt=\"Smile\" />",$bericht);
                $bericht = str_replace(" :D"," <img src=\"smileys/bigsmile.gif\" alt=\"BigSmile( :D )\" />", $bericht);
                $bericht = str_replace(" :("," <img src=\"smileys/sad.gif\" alt=\"Sad( :( )\" />", $bericht);
                $bericht = str_replace(" :'("," <img src=\"smileys/cry.gif\" alt=\"Cry( :'( )\" />", $bericht);
                $bericht = str_replace(" :s"," <img src=\"smileys/scared.gif\" alt=\"Scared( :s )\" />", $bericht);
            }
            function
dbConnect(){
                $host = 'localhost';
                $user = 'root';
                $pass = '123';
                $db = 'gastenboek';
                $GLOBALS["connection"] = mysql_connect($host, $user, $pass);
                $db = mysql_select_db($db);
                if (!$GLOBALS["connection"]) {
                    die('Could not connect: ' . mysql_error());
                }
            }

            
            //Invoegen in de DataBase
            function dbSave(){
                $naam = mysql_real_escape_string($_POST["naam"]);
                $email = $_POST["email"];
                $bericht = $_POST["bericht"];
                $invoegen = "
                    INSERT INTO gastenboek
                        (
                            Naam,
                            Email,
                            Bericht
                        )
                    VALUES
                        (
                            '"
.$naam."',
                            '"
.$email."',
                            '"
.$bericht."'
                        )
                    "
;
                if(!$res = mysql_query($invoegen)){
                    trigger_error(mysql_error().'<br>In query: '.$invoegen);
                }
            }

            //Het invoegen van de Gegevens eindigen hier!
            
            //Hier gaat ie de gegevens geven aan de gebruiker!

            function dbPost(){
                $ophalen = "
                    SELECT
                        naam,
                        datum,
                        bericht
                    FROM
                        gastenboek
                "
;

                if(!$res = mysql_query($ophalen))
                {

                    trigger_error(mysql_error().'<br>In query: '.$ophalen);
                }

                elseif(mysql_num_rows($res) == 0)
                {

                    echo 'Geen resultaten gevonden';
                }
else{
                    while($row = mysql_fetch_assoc($res)){
                    echo '<strong>Naam:</strong> '.$row['naam'].'<br>';
                    echo '<strong>Datum:</strong> '.$row['datum'].'<br>';
                    echo '<strong>Bericht:</strong> '.$row['bericht'].'<br><br>';
                    }
                }
            }

            dbConnect();
            dbPost();
            mysql_close($GLOBALS['connection']);
        ?>

</body>
</html>

Toevoeging op 04/02/2014 21:02:45:

Ik weet dus niet zeker waar ik de codes in moet zetten ook:s
Sorry ben nog niet zo goed in PHP en zeker niet in SQL:p
Gewijzigd op 04/02/2014 21:00:48 door Mathieu Posthumus
 
D B

D B

04/02/2014 21:41:15
Quote Anchor link
Zoals ik het nu snel even zie moet hetgeen wat micheal typt boven regel 73 komen te staan en zal je even $bericht = $row['bericht']; er nog boven moeten zetten.

en dan in de echo regel niet $row['bericht'] maar $bericht . (nu regel 73)

Dus:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?
echo '<strong>Datum:</strong> '.$row['datum'].'<br>'; //regel 72
$bericht = $row['bericht'];
$bericht = str_replace(" :)"," <img src=\"smileys/smile.gif\" alt=\"Smile\" />",$bericht);
$bericht = str_replace(" :D"," <img src=\"smileys/bigsmile.gif\" alt=\"BigSmile( :D )\" />", $bericht);
$bericht = str_replace(" :("," <img src=\"smileys/sad.gif\" alt=\"Sad( :( )\" />", $bericht);
$bericht = str_replace(" :'("," <img src=\"smileys/cry.gif\" alt=\"Cry( :'( )\" />", $bericht);
$bericht = str_replace(" :s"," <img src=\"smileys/scared.gif\" alt=\"Scared( :s )\" />", $bericht);
echo '<strong>Bericht:</strong> '.$bericht.'<br><br>'; //regel 73
?>
Gewijzigd op 04/02/2014 21:46:34 door D B
 
Michael -

Michael -

05/02/2014 08:15:00
Quote Anchor link
Zoals ik zei leg je volgens mij de lat te hoog. Als je de basis nog niet beheerst zou ik hier eerst tutorials voor doornemen.
Daarnaast gebruik je mysql_* functies die worden uitgefaseerd en op termijn niet meer zullen functioneren.
Kijk voor alternatieven naar mysqli of PDO.
 
Mathieu Posthumus

Mathieu Posthumus

05/02/2014 11:50:06
Quote Anchor link
DB en Michael sorry van die icon's het is al gelukt het was vanwege de spatie bij (" :)","
 
Mathieu Posthumus

Mathieu Posthumus

06/02/2014 12:51:06
Quote Anchor link
Oke nu zijn de smileys gelukt, alleen wat nu een probleem is met de naam die wordt opgevraagt vanuit de db die wordt uitgeprint op de website is, dat die naar de email moet linken dus als je op de naam klikt moet je naar de email verwezen worden. zoals je hier op de website hebt:

voorbeeld: Mathieu // dus als je nu op mijn naam klikt zal er een popup geopend worden waarmee je het wilt opvragen. zo staat dat ook op de website.
[email protected]
 
Michael -

Michael -

06/02/2014 13:06:53
Quote Anchor link
Mathieu Posthumus op 06/02/2014 12:51:06:
Oke nu zijn de smileys gelukt, alleen wat nu een probleem is met de naam die wordt opgevraagt vanuit de db die wordt uitgeprint op de website is, dat die naar de email moet linken dus als je op de naam klikt moet je naar de email verwezen worden. zoals je hier op de website hebt:

voorbeeld: Mathieu // dus als je nu op mijn naam klikt zal er een popup geopend worden waarmee je het wilt opvragen. zo staat dat ook op de website.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
echo '<a href="mailto:' . $row['Email'] . '">' . $row['Naam'] . '</a>';
//Waarbij Email het veld is waarin je het emailadres opslaat.
?>
 
Mathieu Posthumus

Mathieu Posthumus

06/02/2014 13:28:20
Quote Anchor link
Michael super bedankt, echt jij helpt me echt heel goed dankjewel!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.