ubb werkt niet in Wamp Server 2.5

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Niek Kasius

Niek Kasius

04/06/2014 16:44:51
Quote Anchor link
Dit script werkt niet meer in mijn nieuwe Wamp Server in de vorige versie werkte het prima, maar nu met php 5.5 niet meer.
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
<?php
function klik(){

    echo "<script language=\"JavaScript\">
function addtext(veld,text) {
    text=' '+text+ ' ';
      if (document.form.elements[veld].createTextRange) {
          document.form.elements[veld].focus();
          document.selection.createRange().duplicate().text = text;
       } else {
        document.form.elements[veld].focus();
          document.form.elements[veld].value +=text;
       }
    }
</script>"
;
}


function
buttons(){
echo '<input type="button" value="B" style="font-weight:bolt; width: 30px"  onClick="javascript:addtext("bericht","[b]text[/b]")">
<input type="button" value="I" style="font-weight:bolt; width: 30px"  onClick="javascript:addtext("bericht","[i]text[/i]")">
<input type="button" value="U" style="font-weight:bolt; width: 30px"  onClick="javascript:addtext("bericht","[u]text[/u]")">'
;
}

function
smileys(){
echo '
 <a href="javascript:addtext("bericht",":B")"><img src="http://localhost/gastenboek/smileys/biggrin.gif" alt="biggrin" border="0"></a>
 <a href="javascript:addtext("bericht",";B")"><img src="http://localhost/gastenboek/smileys/blink.gif" alt="blink" border="0"></a>    
 <a href="javascript:addtext("bericht",":D")"><img src="http://localhost/gastenboek/smileys/cry.gif" alt="cry" border="0"></a>    
 <a href="javascript:addtext("bericht",";D")"><img src="http://localhost/gastenboek/smileys/happy.gif" alt="happy" border="0"></a>    
 <a href="javascript:addtext("bericht",":F")"><img src="http://localhost/gastenboek/smileys/huh.gif" alt="huh" border="0"></a>    
 <a href="javascript:addtext("bericht",";F")"><img src="http://localhost/gastenboek/smileys/mad.gif" alt="mad" border="0"></a>    
 <a href="javascript:addtext("bericht",":P")"><img src="http://localhost/gastenboek/smileys/mask.gif" alt="mask" border="0"></a>
 <a href="javascript:addtext("bericht",";P")"><img src="http://localhost/gastenboek/smileys/ohmy.gif" alt="ohmy" border="0"></a>
 <a href="javascript:addtext("bericht",":S")"><img src="http://localhost/gastenboek/smileys/rolleyes.gif" alt="rolleyes" border="0"></a>    
 <a href="javascript:addtext("bericht",";S")"><img src="http://localhost/gastenboek/smileys/sad.gif" alt="sad" border="0"></a>
 <a href="javascript:addtext("bericht",":T")"><img src="http://localhost/gastenboek/smileys/sleep.gif" alt="sleep" border="0"></a>
 <a href="javascript:addtext("bericht",";T")"><img src="http://localhost/gastenboek/smileys/smile.gif" alt="smile" border="0"></a>
 <a href="javascript:addtext("bericht",":V")"><img src="http://localhost/gastenboek/smileys/tong.gif" alt="tong" border="0"></a>
 <a href="javascript:addtext("bericht",";V")"><img src="http://localhost/gastenboek/smileys/unsure.gif" alt="unsure" border="0"></a>
 <a href="javascript:addtext("bericht",":W")"><img src="http://localhost/gastenboek/smileys/wacko.gif" alt="wacko" border="0"></a>
 <a href="javascript:addtext("bericht",";W")"><img src="http://localhost/gastenboek/smileys/wink.gif" alt="wink" border="0"></a>'
;
}
function
ubb($bericht) {
$bericht = stripslashes($bericht);    
$bericht = nl2br($bericht);    
$bericht = str_replace("[img]","<img src=\"http://",$bericht);    
$bericht = str_replace("[/img]","\">",$bericht);
$bericht = stripslashes($bericht);
$bericht = str_replace("[b]","<b>",$bericht);
$bericht = str_replace("[/b]","</b>",$bericht);
$bericht = str_replace("[i]","<i>",$bericht);
$bericht = str_replace("[/i]","</i>",$bericht);
$bericht = str_replace("[u]","<u>",$bericht);
$bericht = str_replace("[/u]","</u>",$bericht);    

//De smilies staan hierzo
$bericht = str_replace(":B",'<img src="http://localhost/gastenboek/smileys/biggrin.gif" alt="biggrin">',$bericht);
$bericht = str_replace(";B",'<img src="http://localhost/gastenboek/smileys/blink.gif" alt="blink">',$bericht);
$bericht = str_replace(":D",'<img src="http://localhost/gastenboek/smileys/cry.gif" alt="cry">',$bericht);
$bericht = str_replace(";D",'<img src="http://localhost/gastenboek/smileys/happy.gif" alt="happy">',$bericht);
$bericht = str_replace(":F",'<img src="http://localhost/gastenboek/smileys/huh.gif" alt="eng">',$bericht);
$bericht = str_replace(";F",'<img src="http://localhost/gastenboek/smileys/mad.gif" alt="mad">',$bericht);
$bericht = str_replace(":P",'<img src="http://localhost/gastenboek/smileys/mask.gif" alt="mask">',$bericht);
$bericht = str_replace(";P",'<img src="http://localhost/gastenboek/smileys/ohmy.gif" alt="ohmy">',$bericht);
$bericht = str_replace(":S",'<img src="http://localhost/gastenboek/smileys/rolleyes.gif" alt="rolleyes">',$bericht);
$bericht = str_replace(";S",'<img src="http://localhost/gastenboek/smileys/sad.gif" alt="sad">',$bericht);
$bericht = str_replace(":T",'<img src="http://localhost/gastenboek/smileys/sleep.gif" alt="sleep">',$bericht);
$bericht = str_replace(";T",'<img src="http://localhost/gastenboek/smileys/smile.gif" alt="smile">',$bericht);
$bericht = str_replace(":V",'<img src="http://localhost/gastenboek/smileys/tong.gif" alt="tong">',$bericht);
$bericht = str_replace(";V",'<img src="http://localhost/gastenboek/smileys/unsure.gif" alt="unsure">',$bericht);
$bericht = str_replace(":W",'<img src="http://localhost/gastenboek/smileys/wacko.gif" alt="wacko">',$bericht);
$bericht = str_replace(";W",'<img src="http://localhost/gastenboek/smileys/wink.gif" alt="wink">',$bericht);

return $bericht;
}

?>
 
PHP hulp

PHP hulp

24/04/2024 17:40:11
 
- Ariën  -
Beheerder

- Ariën -

04/06/2014 16:51:12
Quote Anchor link
Kan je wat specifieker zijn dan 'werkt niet'?
 
Obelix Idefix

Obelix Idefix

04/06/2014 17:00:26
Quote Anchor link
Wat werkt er inderdaad niet?
De code die hierboven staat zijn alleen functies en die doen op zich niets vanzelf.
Is er daarom geen kans dat de fout ergens anders zit?
 
- SanThe -

- SanThe -

04/06/2014 17:01:53
Quote Anchor link
Zet error reporting aan, dan zie je misschien wat er mis is.
 
- Ariën  -
Beheerder

- Ariën -

04/06/2014 17:03:51
Quote Anchor link
En vertel eens wat je precies doet. Voor hetzelfde geldt is de JS-code gewoon ergens stuk, waardoor er bij het klikken op de knoppen geen UBB-code verschijnt.
 
Niek Kasius

Niek Kasius

04/06/2014 17:12:37
Quote Anchor link
Als ik in deze invoer op een smiley of op een button klikte dan werd die in de textarea van het bericht geplaatst, En als ik dan op posten klik werd het vorzonden <en kwam het in de database in de tabel berichten te staan. maar dat doet het nu niet meer ik kan er wel op klikken maar er gebeurt niks, er zit wel een placeholder="je bericht" in en als je dat iets invult verdwijnen de letters, Maar als ik nu op een smiley klik zet die de placeholder weer terug.

PS
error report staat aan

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
<table align="center" width="500px" border="0" cellspacing="2" cellpadding="2">
<form name="form" method="post" action="">
        <tr>
      <td class="hidden">
           <input type="hidden autocomplete="off" name="emailadres">
      </td>
    </tr>
    <tr>
      <td align="left" width="120px">Naam<b> :</b></td><td align="left" width="300">
        <input type="text" size="34" maxlength="40" id="nameInput" name="username" placeholder="Je naam"></td>
    </tr>
    <tr>
    <tr>
      <td align="left">E_mailadres<b> :</b></td><td align="left">
        <input type="text" size="34" maxlength="40" id="emailInput" name="email" placeholder="Je email adres"></td>
    </tr>
    <tr>
      <td align="left" valign="top">Bericht<b> :</b></td><td align="left">
      <textarea rows="10" cols="50" id="berichtTextarea" name="bericht" placeholder="je bericht"></textarea></td>
    </tr>
    <tr>
      <td><input style="display:none;" type="text autocomplete="off" name="bad_bot">
      </td>
    </tr>
    <tr>
      <td align="left"></td><td colspan="3" align="left"><?php echo klik(); smileys (); ?></td>
    </tr>    
        <tr>
      <td align="left"></td><td align="left"><?php echo klik(); buttons (); ?>&nbsp;
        <input type="submit" name="submit" value="Posten">
        <input type="reset" name="Reset" value="Resetten"></td>
 </tr>
</form>
</table>
Gewijzigd op 04/06/2014 17:17:20 door Niek Kasius
 
- Ariën  -
Beheerder

- Ariën -

04/06/2014 17:17:30
Quote Anchor link
Klinkt als een ander probleem, m.b.t. het versturen van je POST-formulier..
 
Niek Kasius

Niek Kasius

04/06/2014 17:23:00
Quote Anchor link
Ik heb er wel wat aan verander in dat scrip de echo" veranderd in echo' en bijna all die backslashes verwijderd, maar ook met het oude script doet die het zelfde.

in het posten script heb ik niks in veranderd
Gewijzigd op 04/06/2014 17:24:33 door Niek Kasius
 
- Ariën  -
Beheerder

- Ariën -

04/06/2014 17:27:50
Quote Anchor link
Zorg daarom dat je error-reporting aan staat, en laat eens zien hoe je je formulier verstuurt?
 
Niek Kasius

Niek Kasius

04/06/2014 17:30:42
Quote Anchor link
Niek Kasius op 04/06/2014 17:23:00:
Ik heb er wel wat aan verander in dat scrip de echo" veranderd in echo' en bijna all die backslashes verwijderd, maar ook met het oude script doet die het zelfde.

in het posten script heb ik niks in veranderd

Als ik gewoon handmatig
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<b>123</b> of [b]123[/b]
invoer en :P of :V dan krijg wel 123 vet en smileys te zien
Gewijzigd op 04/06/2014 17:36:35 door Niek Kasius
 
- Ariën  -
Beheerder

- Ariën -

04/06/2014 17:38:11
Quote Anchor link
Logisch, want je maakt HTML nergens onschadelijk met htmlentities() of htmlspecialchars()
 
Obelix Idefix

Obelix Idefix

04/06/2014 17:41:29
Quote Anchor link
Niek Kasius op 04/06/2014 17:12:37:
Als ik in deze invoer op een smiley of op een button klikte dan werd die in de textarea van het bericht geplaatst, maar dat doet het nu niet meer ik kan er wel op klikken maar er gebeurt niks

Dan lijkt het er op dat er iets met het aanroepen van de functie niet goed gaat. Die code heb ik nog niets gezien.

Het opmaken van een formulier via een tabel is overigens niet echt meer van deze tijd.
 
Niek Kasius

Niek Kasius

05/06/2014 02:17:54
Quote Anchor link
Quote:
Dan lijkt het er op dat er iets met het aanroepen van de functie niet goed gaat. Die code heb ik nog niets gezien.

Dat is de klik functie die staat boven in het script een stukje Java script.

Ik vind het maar vreemd dat het altijd gewerkt heeft, en nu niet meer kan dat niet aan php5.5 liggen. dat daar dingen in veranderd zijn, wat ik bedoel is een php4 script werkt ook niet meer goed in php5.
Want er zijn natuurlijk wat dingen anders in php5.4 en php5.5.
En kan het niet aan die server liggen, dat die misschien geen Java ondersteund.
Ik weet het niet.
 
- Ariën  -
Beheerder

- Ariën -

05/06/2014 08:48:40
Quote Anchor link
Ik zie geen JAVA-code....
JAVA is GEEN JavaScript, en verder draait dit client-side op de computer van de bezoeker.

Je gaf aan dat de klik-knoppen voor de smileys/ubb niet werkten. Is er recentelijk wat aangepast aan het formulier?
Gewijzigd op 05/06/2014 08:55:12 door - Ariën -
 
Obelix Idefix

Obelix Idefix

05/06/2014 09:18:07
Quote Anchor link
Niek Kasius op 05/06/2014 02:17:54:
Quote:
Dan lijkt het er op dat er iets met het aanroepen van de functie niet goed gaat. Die code heb ik nog niets gezien.

Dat is de klik functie die staat boven in het script een stukje Java script.

Maar hoe wordt die klik-functie aangeroepen?

Niek Kasius op 05/06/2014 02:17:54:
Ik vind het maar vreemd dat het altijd gewerkt heeft, en nu niet meer kan dat niet aan php5.5 liggen. dat daar dingen in veranderd zijn, wat ik bedoel is een php4 script werkt ook niet meer goed in php5.
Als javascript niet doet wat je verwacht, zou ik het in eerste instantie niet in php zoeken.

Wordt debuggen om te achterhalen waar het fout gaat. Nu ligt het misschien aan Wamp, javascript, php-versie, ....... Het eerste wat ik zou zien te achterhalen is of met het klikken wel de javascript wordt aangeroepen (bv door de javascript code aan te passen en een alert te tonen). Op die manier kun je gerichter zoeken.
 
Niek Kasius

Niek Kasius

05/06/2014 11:03:09
Quote Anchor link
Ik heb in dat ubb script ook error report gezet maar krijg geen foutmeldig
En ik heb gisteren wat veranderd in de form om te kijken of dat iets uit maakt maar dat is niet zo.
Ik geef hier het hele posten script.
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
<?php
session_start();
ini_set('display_errors',1); // 1 == aan , 0 == uit
error_reporting(E_ALL | E_STRICT);
include("includes/config.php");
include("includes/ubb.php");

DEFINE('MIN_SECONDS', 10); // Minimumtijd dat gebruikt moet worden het formulier om te voltooien
$timenow = time();
$process = false;

if (isset($_SESSION['timecheck']['landtime']) && $_POST) {  
    
    $landtime = $_SESSION['timecheck']['landtime'];
    
    // Controleer de hoeveelheid tijd die nodig was
    if (($landtime + MIN_SECONDS) < $timenow) {
        // gepasseerde tijdscontrole
        $process = true;
    }
else {
        // Mogelijk spam
        $process = false;
    }

    
    // Reset the timer
    $_SESSION['timecheck']['landtime'] = $timenow;

}
else  {
    
    // Dit is de eerste pagina verzoek dus de sessievariabele ingesteld op de huidige tijd
    $_SESSION['timecheck']['landtime'] = $timenow;      
}


if($_SERVER['REQUEST_METHOD'] == 'POST' && !empty($_POST))
  {

 
    if(isset($_POST['bad_bot']) && $_POST['bad_bot'] !="") {
   header('location: sorry.php');
  }

 
    $aFouten = array();

    if($_POST['username'] == ''){
      $aFouten[] = 'Je hebt geen naam ingevuld';
      }
else{
    $naam = $_POST["username"];
    if(!preg_match("/^[a-zA-Z0-9 ]*$/",$username)){
      $aFouten[] = "Alleen letters en of cijfers zijn toegestaan";
      }
    }

 
     if ($_POST['email'] == '') {
        $aFouten[] = 'Je hebt geen email ingevuld';
       }
else {
    $email = filter_var($_POST['email'], FILTER_SANITIZE_EMAIL);  
    if (!filter_var($email, FILTER_VALIDATE_EMAIL)) {
        $aFouten[] = 'je email adres is niet geldig';  
       }  
     }


 if($_POST['bericht'] == '') {
       $aFouten[] = 'Je hebt geen bericht ingevuld';  
      }
else{
      $bericht = $_POST["bericht"];      
    if (preg_match('/<a[\s]+[^>]*?href[\s]?=[\s\""\']+(.*?)[\""\']+.*?>([^<]+|.*?)?<\/a>/', $bericht)) {  
       $aFouten[] = 'Sorry!!! Maar in je bericht staan een of meerdere linken, Dus spam';
      }
    }

 
//include("includes/ip functie.php");

if(count($aFouten) != 0)
{

?>


<br />
<br />
<table align="center" width="500px" border="1">
<tr>
<td align="center">
<table border="0" width="100%" cellpadding="0" cellspacing="0">
<tr>
<td>
<p class="p1">
De volgende fouten zijn opgetreden:
</p>
<hr>
</td>
</tr>

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
<?php
            if (isset($_SESSION['timecheck']['landtime']) && $_POST) {  
            if ($process === true) {
                $message   = '';
                $alerttype = 'alert-succes';
               }

               else if ($process === false) {
                        $message = 'Sorry SpamBot.';  
                        $alerttype = 'alert-error';
               }

               echo '<td '.$alerttype.'">';
               echo $message; header('Refresh: 1; url=index.php'); exit;
               }

               ?>

<br />
</td>
</tr>
<tr>
<td>
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
              for($Fi = 0; $Fi < count($aFouten); $Fi++) {
                echo $aFouten[$Fi]; echo '<br /><br />'; header('Refresh: 2; url=index.php'); exit;
               }
             }

            ?>

</td>
</tr>
<tr>
<td>
</td>
</tr>
<table>
</td>
</tr>
</table>
<br />

<h4>Je bericht is succesvol toegevoegd. Je word nu terug gestuurd</h4>

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
<?php  
     header('Refresh: 2; url=index.php');
  
mysqli_query($con,"INSERT INTO berichten (id,
                                          username,
                                          email,
                                          bericht,
                                          datum)
                                  VALUES ('',
                                          '"
.mysqli_real_escape_string($con,$_POST['username'])."',
                                          '"
.mysqli_real_escape_string($con,$_POST['email'])."',
                                          '"
.mysqli_real_escape_string($con,$_POST['bericht'])."',
                                          NOW())"
);
                                          }
                                      
                                          ?>


<br />
<table align="center" width="500px" border="0" cellspacing="2" cellpadding="2">
<form name="form" method="post" action="">
<tr>
<td><input style="display:none;" type="text autocomplete="off" name="bad_bot">
</td>
</tr>
<tr>
<td align="left" width="120px">Naam<b> :</b></td><td align="left" width="300">
<input type="text" size="34" maxlength="40" name="username"></td>
</tr>
<tr>
<tr>
<td align="left">E_mailadres<b> :</b></td><td align="left">
<input type="text" size="34" maxlength="40" name="email"></td>
</tr>
<tr>
<td align="left" valign="top">Bericht<b> :</b></td><td align="left">
<textarea rows="10" cols="50" name="bericht"></textarea></td>
</tr>
<tr>
<td align="left"></td><td colspan="3" align="left">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo klik(); smileys (); ?>
</td>
</tr>
<tr>
<td align="left"></td><td align="left">
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo klik(); buttons (); ?>
&nbsp;
<input type="submit" name="submit" value="Posten">
<input type="reset" name="Reset" value="Resetten"></td>
</tr>
</form>
</table>

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
mysqli_close($con);
?>


</div>
<div id="footer">
<br />
<a href="http://localhost/gastenboek/index1.php">Terug</a>
</div>
 
- Ariën  -
Beheerder

- Ariën -

05/06/2014 11:56:22
Quote Anchor link
Kan je het script even tussen code tags zetten?
 
Niek Kasius

Niek Kasius

05/06/2014 12:29:01
Quote Anchor link
Ik heb eerst mijn bericht getypt en daar onder de begin en eind code tags en daar tussen het script geplakt dat het nu alweer eens niet werkt ligt niet aan mij.
Ik had dat in mijn reactie op 04/06/2014 17:23:00: ook al eens, ik had het eerst gewoon getypt maar toen kwamen die haakjes niet in zicht. En toen heb ik wijzigen geklikt het tussen code gezet.
 
Niek Kasius

Niek Kasius

06/06/2014 18:10:29
Quote Anchor link
Ik denk dat het aan php5.5 ligt.
Want ik het nu met succes Xampp opnieuw geinstaleerd en heb het daarin geprobeerd, Maar ook daarin werkt het niet.
En ik had geprobeerd het met mysql te doen in plaats van mysqli, en daarin kreeg ik een melding dat ik daarin niet meer met mysql kan werken, en dat ik mysqli of pdo of zoiets moet gebruiken.
Ik had het geprobeerd zonder dat Timeblock en bad_bot,
En bericht veranderd in tekst in in de ubb en posten en in de database. maar dat maakte geen verschil
Gewijzigd op 06/06/2014 18:19:36 door Niek Kasius
 



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.