Registratie script

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Jules Kreutzer

Jules Kreutzer

07/08/2010 19:34:09
Quote Anchor link
Hallo,

Ik heb een vraagje, ik heb namelijk een script gemaakt om te registreren. maar nu zit ik met een probleem:

Wanneer ik het scrip upload naar een webserver, en ga dan naar de pagina (register.php) krijg ik de code tussen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? en ?>
te zien voor het formulier. Hoe kan ik deze weg werken, zodat je niet meer de code ziet?

Ik heb het script gemaakt in Adobe CS3 Dreamweaver, wel zelf geschreven.
Als ik in dreamweaver naar design of liveview ga, ziet het er gelikt uit. maar druk ik op f12 op de pagina te zien in een webbrouwser, dan zie ik de code.

Ik heb tot nu toe nog niets geprobeert om dit probleem te verhelpen.

Bedank voor jullie steun!

Het script: (ik heb de <head> en body weg gelaten, hier staat alleen wat tussen
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<? en ?>
staat en het formulier. Mochten jullie toch de hele pagina willen zien, vraag het dan even.
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
<?
if ($_GET['actie'] == 'registreren') {
if ($_GET['versturen'] == 'ja') {
if (empty($_POST['inlognaam'])) {
echo "Je hebt geen inlognaam ingevuld, <a href=\"".$_SERVER['PHP_SELF']."?actie=registreren\">Probeer nogmaals</a>.";
}
else if (empty($_POST['passwoord'])) {
echo "Je hebt geen passwoord ingevuld, <a href=\"".$_SERVER['PHP_SELF']."?actie=registreren\">Probeer nogmaals</a>.";
}
else if (empty($_POST['passwoord_controle'])) {
echo "Je moet ter controle ook het controleveld voor het passwoord invullen, <a href=\"".$_SERVER['PHP_SELF']."?actie=registreren\">Probeer nogmaals</a>.";
}
else {
if ($_POST['passwoord'] != $_POST['passwoord_controle']) {
echo "De ingevoerde passwoorden kwamen niet overeen, <a href=\"".$_SERVER['PHP_SELF']."?actie=registreren\">Probeer nogmaals</a>.";
}
else {
$registreer = "INSERT INTO members (inlognaam, passwoord) VALUES ('".$_POST['inlognaam']."', '".$_POST['passwoord']."')";
mysql_query($registreer) or die(mysql_error());
echo "Uw gegevens zijn succesvol opgeslagen! Klik <a href=\"".$_SERVER['PHP_SELF']."\">hier</a> om in te kunnen loggen.";
}
}
}
else {
?>


<form name="Register" method="post" action="$_SERVER[PHP_SELF']?actie=registreren&versturen=ja">
<p>
<label>Gebruikersnaam:
<input type="text" name="USERNAME" id="USERNAME">
</label>
</p>
<p>
<label>Wachtwoord:
<input type="text" name="PASSWORD" id="PASSWORD">
</label>
</p>
<p>
<label>Wachtwoord (controle)
<input type="text" name="PASSWORD_CHECK" id="PASSWORD_CHECK">
</label>
</p>
<p>
<label>
<input type="submit" name="button" id="button" value="Verstuur!">
</label>
</p>
</form>
 
PHP hulp

PHP hulp

29/11/2024 03:31:16
 
- SanThe -

- SanThe -

07/08/2010 19:39:11
Quote Anchor link
Nooit shorttags gebruiken maar volledig <?php en ?> gebruiken. Heeft de file de extensie .php en is php geaktiveerd op de server? En heb je het geupload naar een host of draai je zelf Apache?
Gewijzigd op 07/08/2010 19:40:42 door - SanThe -
 
- Mark -

- Mark -

07/08/2010 19:39:41
Quote Anchor link
Je moet ook geen short tags gebruiken. Die staan dus uit op je server.

Verander <? ?> naar <?php ?>
Gewijzigd op 07/08/2010 19:46:32 door - Mark -
 
- SanThe -

- SanThe -

07/08/2010 19:42:24
Quote Anchor link
Ik krijg zelfs het idee dat je de file direct opent in een webbrowser. Dan krijg je inderdaad gewoon de code te zien.

@Mark: Gebruik de [.ignore] en [/.ignore] tags (zonder de punt).
Gewijzigd op 07/08/2010 19:45:20 door - SanThe -
 
- Mark -

- Mark -

07/08/2010 19:47:42
Quote Anchor link
:p bedankt, heb ik ook weer wat geleerd vandaag.
 
Jules Kreutzer

Jules Kreutzer

07/08/2010 21:23:47
Quote Anchor link
SanThe Nvt, idd ik open de pagina direct in een webbrouwser, maar ik zie het template gewoon, alleen staat de code dan voor het formulier.

Ik heb xampp op me pc staan dus ik draai apache op mijn pc, ik zal hem nu even uploaden naar de server

Toevoeging op 07/08/2010 21:26:07:

hmmm als ik hem upload krijg ik dit te zien:
Parse error: syntax error, unexpected $end in /home/tdgjules/domains/rj-fragclan.eu/public_html/demo/register.php on line 108

www.demo.rj-fragclan.eu/register.php is de link
 
- SanThe -

- SanThe -

07/08/2010 21:37:23
Quote Anchor link
Dit heb je in je php staan:
( => 14
) => 14
{ => 9
} => 7
[ => 14
] => 14
' => 36
" => 36

Dus je vergeet 2 keer iets af te sluiten.

Toevoeging op 07/08/2010 21:44:25:

Je manier van coderen is erg onoverzichtelijk.
Gebruik de tab-toets eens.

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
<?php
if ($_GET['actie'] == 'registreren') {
     if ($_GET['versturen'] == 'ja') {
          if (empty($_POST['inlognaam'])) {
               echo "Je hebt geen inlognaam ingevuld, <a href=\"".$_SERVER['PHP_SELF']."?actie=registreren\">Probeer nogmaals</a>.";
          }
else if (empty($_POST['passwoord'])) {
               echo "Je hebt geen passwoord ingevuld, <a href=\"".$_SERVER['PHP_SELF']."?actie=registreren\">Probeer nogmaals</a>.";
          }
else if (empty($_POST['passwoord_controle'])) {
               echo "Je moet ter controle ook het controleveld voor het passwoord invullen, <a href=\"".$_SERVER['PHP_SELF']."?actie=registreren\">Probeer nogmaals</a>.";
          }
else {
               if ($_POST['passwoord'] != $_POST['passwoord_controle']) {
                    echo "De ingevoerde passwoorden kwamen niet overeen, <a href=\"".$_SERVER['PHP_SELF']."?actie=registreren\">Probeer nogmaals</a>.";
               }
else {
                    $registreer = "INSERT INTO members (inlognaam, passwoord) VALUES ('".$_POST['inlognaam']."', '".$_POST['passwoord']."')";
                    mysql_query($registreer) or die(mysql_error());
                    echo "Uw gegevens zijn succesvol opgeslagen! Klik <a href=\"".$_SERVER['PHP_SELF']."\">hier</a> om in te kunnen loggen.";
               }
          }
     }
else {
?>


Nu zie je direct dat er nog 2 open staan.

Toevoeging op 07/08/2010 21:47:11:

Het script is ook nog lek => SQL-Injection.
 



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.