Ongewenste (lege) berichten plaatsen in Gastboek

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jonet L

Jonet L

04/06/2008 23:57:00
Quote Anchor link
Mijn zoon van 12 heeft een gastboek gemaakt (met hulp van mij) bij zijn website. Hij controleert daar de invoer van. indien bepaalde velden niet aan bepaalde waardes voldoen wordt die niet verwerkt.
ook heeft hij er een filter in gebouwd die controleert of er geen url's in de velden ingevuld zijn of onzedelijke woorden. is dat wel het geval dan wordt het script niet verder verwerkt. indien het bericht wel geldig is wordt het bijgewerkt en tevens een mail verstuurd met bericht zodat hij weet of er wat bijgeschreven is.
nu wil het nog steeds gebeuren dat er wel bericht bijgeschreven wordt maar dat bericht is leeg. hier wordt ook op gecontroleerd of de velden wel invoer hebben. alle velden zijn leeg en ook geen IP adres komt boven water.
Ik weet niet waar dat vandaan komt en hoe dit ontstaat en het belangrijkste : hoe vangen we dat af
herkent iemand dit probleem en welke truc moeten we toepassen om dit te kunnen blokeren.?
 
PHP hulp

PHP hulp

19/04/2024 17:12:54
 
Arend a

Arend a

05/06/2008 00:34:00
Quote Anchor link
Beste heer/mevrouw? van Leeuwen,

Het kan werkelijk aan van alles liggen. Het makkelijkste is als je de relevante code plaatst en een linkje naar het gastenboek. Dan is het probleem en de oplossing het makkelijkst en snelst aan te dragen.

De relevante code zou zijn het gedeelte waar het fout gaat (het controleren dus). Waar en hoe worden de velden gecontroleerd?
Gewijzigd op 01/01/1970 01:00:00 door Arend a
 
Erwin Nieuwenhuis

Erwin Nieuwenhuis

05/06/2008 07:40:00
Quote Anchor link
waarschijnlijk gaat er iets mis met je $_POST variabelen?
Of je server ondersteunt geen super globals(geen ip)?
 
Robert Deiman

Robert Deiman

05/06/2008 08:02:00
Quote Anchor link
Of de controle van de invoer is wel goed,maar het verwerken daarvan naar SQL gaat niet goed:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
<?php
    $query
= "INSERT INTO tabel (kolom1, kolom2, kolom3) VALUES ('".$waarde1."', '".$waarde2."' , '".$waarde3."')";
    $result = mysql_query($query);
    if($result && mysql_affected_rows($result) == 1){
       echo 'Bijgewerkt';
       }

   else{
        trigger_error(mysql_error(). '<br />In query: '.$query;
        }

?>
 
Jonet L

Jonet L

05/06/2008 10:32:00
Quote Anchor link
Hij doet samen met 3 klasgenootjes mee aan de thinkquest wedstrijd van Groep 8 basisschool en heeft inmidels bericht gekregen dat ze in de finale zijn gekomen gemaakt in publicher maar ze wilde geen "aangelinkt" gastboek zoals iedereen heeft maar 1 in de stijl van de website
http://www.10872.08jn.thinkquest.nl/

er wordt geen gebruik gemaakt van mysql maar de data wordt direct in een html bestand gezet. Dit is dus de eenvoudige versie en dat moet ook want ze zijn 12 jaar

code ingekort op 1 veld
de controle code ziet er als volgt uit:


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
<?php

//Het formulier guestbook_new.php is ingevuld en verzonden
if(isset($_POST['GWVeroveraars'])){
  //HTML- en PHP-tags verwijderen
  $name=strip_tags($_POST['name']);
  $REMOTE_ADDR = $_SERVER['REMOTE_ADDR'];
  $HTTP_USER_AGENT = $_SERVER['HTTP_USER_AGENT'];
  
  //controleren url=http en ongewenste taal uit de strings indien aanwezig afbreken
  include('filter.inc.php');

  //*** invoer controleren ****
  //Geen echte naam opgegeven

  if(strlen(trim($name))<5){
    $error_msg="Typ uw naam";
  }

  //Extra Check op invoer naam omdat er toch nog steeds lege velden worden weggeschreven
  if(trim($name)==""){
    $error_msg="Typ uw naam";
  }
}
  
//*** Einde controle ****
  
if($error_msg){
    //inhoud klopt niet - foutmelding weergeven en velden niet verwerken
    $message ="<br>Helaas kunnen we uw bericht niet in ons gastenboek opnemen ivm onvolledige gegevens:<br><br>";
    $message.=$error_msg;
    $message.="<br><br>Klik op <a href=javascript:history.back(1)>Vorige</a> om alle velden in te vullen.<br><br>";

else
// gastenboek opmaken en email versturen
}

>?
Gewijzigd op 01/01/1970 01:00:00 door Jonet L
 



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.