register globals script

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Huh bla

Huh bla

11/02/2006 19:16:00
Quote Anchor link
hey allemaal

ik heb een script wat alleen werkt met de register globals aan, nu wil ik dat omzetten zodat het ook werkt met registerglobals uit.

kunnen jullie mij hierbij helpen (jullie hoeven het script echt niet helemaal om te gaan zetten). Maar ik ben nog niet zo heel erg goed met php, dus ik weet niet hoe ik moet beginnen.

EDIT: pagina's verwijderd, heb hieronder 1 pagina gepost, en vond het onzin om de oude erop te laten staan, des te groter word de pagina
Gewijzigd op 12/02/2006 12:56:00 door Huh bla
 
PHP hulp

PHP hulp

26/04/2024 20:12:01
 
Arjan Kapteijn

Arjan Kapteijn

11/02/2006 19:22:00
Quote Anchor link
$JouwWebsiteNaam
$JouwEmail

worden dan:

$_POST['JouwWebsiteNaam'];
$_POST['JouwEmail'];

of als je toch $JouwEmail wilt blijven gebruiken:

$JouwEmail = $_POST['JouwEmail'];
 
Barman V

Barman V

11/02/2006 19:22:00
Quote Anchor link
Wat er verandert is onder andere:
$Mailadres wordt $_POST['Mailadres']

en

$actie wordt $_POST['actie']

Dus bijvoorbeeld

if($actie == "versturen"){

wordt dan

if($_POST['actie'] == "versturen") {

succes
 
Huh bla

Huh bla

11/02/2006 19:49:00
Quote Anchor link
maar waar komt dan die post vandaa, het is toch een waarde die ik eerder al heb opgegeven :S
 
EdwinG

EdwinG

12/02/2006 00:07:00
Quote Anchor link
<form action="nieuwsbriefversturen.php?actie=versturen" method="Post">

Door method="post" worden alle velden bij het versturen van de pagina opgenomen in de $_POST array.
 
Huh bla

Huh bla

12/02/2006 00:25:00
Quote Anchor link
<input type='hidden' name='wachtwoord' value='
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $wachtwoord; ?>
'>
<input type='hidden' name='gebruikersnaam' value='
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $gebruikersnaam; ?>
'>

moet dan worden
<input type='hidden' name='wachtwoord' value='
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $_POST['$wachtwoord']; ?>
'>
<input type='hidden' name='gebruikersnaam' value='
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $_POST['$gebruikersnaam']; ?>
'>

edit:
toch?
Gewijzigd op 12/02/2006 00:28:00 door Huh bla
 
PHP erik

PHP erik

12/02/2006 00:31:00
Quote Anchor link
Nee Luuk, het moet worden:

<input type='hidden' name='wachtwoord' value='
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $_POST['wachtwoord']; ?>
'>
<input type='hidden' name='gebruikersnaam' value='
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
<?php echo $_POST['gebruikersnaam']; ?>
'>
 
Huh bla

Huh bla

12/02/2006 00:32:00
Quote Anchor link
oke dus de $ moeten weg

en waar moet dat allemaal gebeuren?
 
PHP erik

PHP erik

12/02/2006 00:34:00
Quote Anchor link
Alle waardes die uit je formulier komen, die worden in PHP opgeslagen als $_POST['deNaam']. Dus overal waar je input uit het formulier gebruikt moet je $_POST gebruiken :)
 
PHP erik

PHP erik

12/02/2006 00:35:00
Quote Anchor link
Ik heb er een kleine 2 jaar geleden een tutorial over geschreven:

http://www.phphulp.nl/php/tutorials/2/139/236/
 
Willem Jan Z

Willem Jan Z

12/02/2006 00:35:00
Quote Anchor link
Nee het staat namelijk niet in het forumulier maar in de URL, dus if($_GET['actie'] == "versturen"),

Tip:
Gebruik if($_SERVER['REQUEST_METHOD'] == "POST")
dan weet je zeker dat de data die je binnen krijgt uit het formulier komt, en niet ergens anders vandaan.
 
Huh bla

Huh bla

12/02/2006 00:41:00
Quote Anchor link
@erik

thx, dat ga ik is gebruiken

@willem-Jan

???
 
Willem Jan Z

Willem Jan Z

12/02/2006 00:50:00
Quote Anchor link
Niet teveel meer op mijn bericht letten, heb nogal wat berichten gemist... Ik reageerde nog op Edwin Gozeling...
 
Huh bla

Huh bla

12/02/2006 11:50:00
Quote Anchor link
oke, ^_^
 
Huh bla

Huh bla

12/02/2006 12:03:00
Quote Anchor link
het lukt me niet, het script blijft maar niet werken :'(
 
Huh bla

Huh bla

12/02/2006 12:51:00
Quote Anchor link
dit is wat ik nu heb, wat is verkeerd ;-)

<html>
<head>
<title>Nieuwsbrief verzenden</title>
</head>

<body>
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
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
<?php

//dit moet je ff veranderen
$JouwWebsiteNaam = "jesitenaam"; // Jouw website naam
$JouwEmail = "je e-mail adres"; // Jouw e-mail adres
$DataBestand = "nieuwsbrief_data.php"; // De locatie van het databestand
$DitBestand = "127.0.0.1/psmail/nieuwsbrief.php"; // De url van dit bestand


//vanaf hier niks meer ;-)

// Begin functie om het e-mail adres te controleren

function ControleerEmail($a)
{
  
    return ereg("[A-Za-z0-9_-]+([\.]{1}[A-Za-z0-9_-]+)*@[A-Za-z0-9-]+([\.]{1}[A-Za-z0-9-]+)+",$a);  
}
  
// Einde functie om het e-mail adres te controleren

$NieuwsbriefData = file($DataBestand);

if($_POST['actie'] == "versturen"){
    if($_POST['Mailadres']) {
        for($i = 0; $i < count($NieuwsbriefData); $i++)    {
            if(strstr($NieuwsbriefData[$i],$_POST['Mailadres'])) {
                $alinlijst = true;
            }
        }


        if($alinlijst) {
            echo("<b>Het e-mail adres staat al in de lijst!</b><br><br>");
        }

        elseif(!ControleerEmail($_POST['Mailadres'])) {
            echo("<b>Het e-mail adres is ongeldig!</b><br><br>");
        }

        else {
            $NieuwsbriefB = fopen($DataBestand,"a");
            fputs($NieuwsbriefB,"$Mailadres\r\n");
            fclose($NieuwsbriefB);
            mail("<$Mailadres>","Aanmelding Nieuwsbrief $JouwWebsiteNaam",
            "Beste eigenaar van $Mailadres,
            \n
            \n
            U of iemand anders heeft dit e-mail adres
            \n
            aangemeld bij de Nieuwsbrief van $JouwWebsiteNaam.
            \n
            Wilt u dit ongedaan maken, dan kan dit op
            \n
            $DitBestand.
            \n
            \n
            $JouwWebsiteNaam"
,
            "From: $JouwWebsiteNaam <$JouwEmail>");
            echo("<b>Het e-mail adres is succesvol aangemeld!</b><br><br>");
        }
    }

    else {
        echo("<b>Je hebt geen e-mail adres ingevuld!</b><br><br>");
    }
}


elseif($_POST['actie'] == "afmelden") {
    if($_POST['Mailadres']) {
        $NieuwsbriefB = fopen($DataBestand,"w");
        for($i = 0; $i < count($NieuwsbriefData); $i++) {
            if(!strstr($NieuwsbriefData[$i],$_POST['Mailadres'])) {
                fputs($NieuwsbriefB,$NieuwsbriefData[$i]);
            }

            else {
                $gelukt = true;
            }
        }

        fclose($NieuwsbriefB);
        if($gelukt) {
            mail("<$Mailadres>","Afmelding Nieuwsbrief $JouwWebsiteNaam","
            Beste eigenaar van $Mailadres,
            \n
            \n    
            U of iemand anders heeft dit e-mail adres
            \n
            afgemeld bij de Nieuwsbrief van $JouwWebsiteNaam.
            \n
            Wilt u dit ongedaan maken, dan kan dit op
            \n
            $DitBestand.
            \n
            \n
            $JouwWebsiteNaam"
,
            "From: $JouwWebsiteNaam <$JouwEmail>");
            echo("<b>Het e-mail is succesvol afgemeld!</b><br><br>");
        }

        else {
            echo("<b>Het e-mail is niet gevonden!<br>Probeer het opnieuw.</b><br><br>");
        }
    }

    else {
        echo("<b>Je hebt geen e-mail adres ingevuld!</b><br><br>");
    }
}


?>

<form method='post'>
E-mail adres: <input type='text' name='Mailadres'>
<br>
<input type='radio' name='actie' value='aanmelden' checked="checked">Aanmelden
<input type='radio' name='actie' value='afmelden'>Afmelden
<br>
<br>
<input type='submit' value='Verstuur'>
</form>
</body>
</html>
 
Huh bla

Huh bla

12/02/2006 13:15:00
Quote Anchor link
sombady (A) ;-)
 
Huh bla

Huh bla

12/02/2006 15:43:00
Quote Anchor link
weet niemand waar de fout zit?
 
PurpleMadness -

PurpleMadness -

12/02/2006 15:49:00
Quote Anchor link
Zeg dan wat de error is..
 
Huh bla

Huh bla

12/02/2006 16:30:00
Quote Anchor link
geen error, ik weet niet of je gelezen hebt waar het over gaat, maar het gaat er dus over dat ik dit script om wil zetten zodat het werkt zonder dat de register_globals aan staan

nou heb dit geprobeerd met de tips van hierboven, maar het werkt niet. nog steeds werkt het niet als de register_globals uit staan...
 
- SanThe -

- SanThe -

12/02/2006 17:16:00
Quote Anchor link
Als je de error_reporting(E_ALL); bovenin je script zet krijg je ook de notices te zien en die geven vaak aan welke $vars nog niet zijn gedefinieerd of dus misschien met globals te maken hebben.
 



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.