[Vraag 2] Verbeter script

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Colin aaaaaaa

Colin aaaaaaa

05/05/2007 18:50:00
Quote Anchor link
Hallo,

Ik zoek een scriptje of een beginnetje van hoe je alléén mensen toelaat met een ip-adres die in de database staat. Ik ben namelijk bezig met een pagina te maken waarop alle downloads staan, waar je eenmalig voor hebt moeten betalen (dat doe ik met behulp van Eurobellen). Ik laat hem een scriptje uitvoeren die je ip-adres in de database zet als je die pagina hebt bezocht.

Wilt iemand het voor me maken ofzo? Ja, ik weet het, het is Phphulp, maar ik kan het nergens vinden.

Alvast bedankt dan maar :)


EDIT:

Hmm, volgende vraag :|

Wat is hier fout aan:

Controleer.php

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
<?php
if (!isset($_GET['controleer']))
echo "Zo gaat dat niet =)";
}

else {
if($_GET['controleer']=='15023') {
$ip = $_SERVER['REMOTE_ADDR'];

mysql_connect('localhost', 'downloaded', 'betaald') or die(mysql_error());
mysql_select_db('downloaded') or die(mysql_error());

$sql_a = mysql_query("INSERT INTO toegestane_mensen (ip) VALUES ('$ip')");
}

else {
echo "De code is verkeerd.";
}

?>


Stukje van index.php:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
Ben je een admin? Typ dan hier de code in:<br />
<form name="form" method="get" action="controleer.php">
  <input name="controleer" type="text">
  <input type="submit" value="Controleer">
</form>


Ja, ik heb bewust voor GET gekozen ;)

O ja, en ik krijg geen errors. Ik heb dit stukje er al in gezet:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
ini_set('display_errors', 1); error_reporting(E_ALL);


Werkt niet.
Gewijzigd op 01/01/1970 01:00:00 door Colin aaaaaaa
 
PHP hulp

PHP hulp

23/11/2024 14:04:56
 
Cedric

Cedric

05/05/2007 18:53:00
Quote Anchor link
Ik zou zeggen, niet met ip's doen, die kunnen veranderen. Er zullen mensen zijn die iedere keer opnieuw zullen moeten betalen.
 
Mebus  Hackintosh

Mebus Hackintosh

05/05/2007 18:58:00
Quote Anchor link
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
<?php

// mysql verbinding

$sql_a = mysql_query("SELECT COUNT(*) AS aantal FROM toegestane_mensen WHERE ip = '".$_SERVER['REMOTE_ADDR']."'");

if(!mysql_error()) {

    $res_a= mysql_fetch_assoc($sql_a);


   if($res_a['aantal'] >= 1) {

      // doorgaan

   }


}
else {

// error

}

?>


Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
CREATE TABLE toegestane_mensen (
ip varchar(23) not null
);


Zoiets denk?

Edit:
Zelf sla ik het ip adress het liefst op als een int maar dan snappen jullie der weer geen hout van en vraag je waarschijnlijk of ik dat eruit kan halen...
Gewijzigd op 01/01/1970 01:00:00 door Mebus Hackintosh
 
Iltar van der berg

iltar van der berg

05/05/2007 19:07:00
Quote Anchor link
int? en de puntjes dan?
 
Mebus  Hackintosh

Mebus Hackintosh

05/05/2007 19:09:00
Quote Anchor link
iltar van der berg schreef op 05.05.2007 19:07:
int? en de puntjes dan?


Alles word omgezet in een int waarde met de MySQL functie INET_ATON en om de int waarde weer om te zetten naar een string gebruik je INET_NTOA

http://dev.mysql.com/doc/refman/5.1/en/miscellaneous-functions.html

Edit:
Die puntjes worden gewoon meegenomen... Wat is het nut hiervan? Bespaart wat bytes en ik vind zelf eigenlijk ook dat het een beetje veiligheid bied.
Gewijzigd op 01/01/1970 01:00:00 door Mebus Hackintosh
 
Colin aaaaaaa

Colin aaaaaaa

05/05/2007 19:10:00
Quote Anchor link
Wat is hier fout 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
<?php

mysql_connect('localhost', 'downloaded', '****') or die(mysql_error());
mysql_select_db('downloaded') or die(mysql_error());

$sql_a = mysql_query("SELECT COUNT(*) AS aantal FROM toegestane_mensen WHERE ip = '".$_SERVER['REMOTE_ADDR']."'");

if(!mysql_error()) {

    $res_a= mysql_fetch_assoc($sql_a);


   if($res_a['aantal'] >= 1) {

     echo "Hoi";

   }


}
else {

echo "Dag";

}


?>
Gewijzigd op 01/01/1970 01:00:00 door Colin aaaaaaa
 
Mebus  Hackintosh

Mebus Hackintosh

05/05/2007 19:12:00
Quote Anchor link
Zonder error kan ik niks...

Even een kleine aanpassing:

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

ini_set('display_errors', 1); error_reporting(E_ALL);

mysql_connect('localhost', 'downloaded', '****') or die(mysql_error());
mysql_select_db('downloaded') or die(mysql_error());

$sql_a = mysql_query("SELECT COUNT(*) AS aantal FROM toegestane_mensen WHERE ip = '".$_SERVER['REMOTE_ADDR']."'");

if(!mysql_error()) {

    $res_a= mysql_fetch_assoc($sql_a);


   if($res_a['aantal'] >= 1) {

     echo "Hoi";

   }
else {

     echo 'Je hebt geen rechten om deze pagina te kunnen bekijken.'."\n"; // Gebruikt voor tekst enkele quotes

   }

}
else {

echo mysql_error();

}


?>
Gewijzigd op 01/01/1970 01:00:00 door Mebus Hackintosh
 
Colin aaaaaaa

Colin aaaaaaa

05/05/2007 19:13:00
Quote Anchor link
Een mooie witte pagina.

(Ik krijg eigenlijk nooit een error...)
Gewijzigd op 01/01/1970 01:00:00 door Colin aaaaaaa
 
Mebus  Hackintosh

Mebus Hackintosh

05/05/2007 19:15:00
Quote Anchor link
Colin schreef op 05.05.2007 19:13:
Een mooie witte pagina.

(Ik krijg eigenlijk nooit een error...)


Zie mijn edit eens en krijg je dan wel een error te zien?
 
Colin aaaaaaa

Colin aaaaaaa

05/05/2007 19:19:00
Quote Anchor link
Nu werkt ie... :?

Anyway, ik ga mijn IP-Adres eens in de DB zetten ;)

EDIT: Duizendmaal dank!

Nu ga ik een pagina maken die je ip-adres in de Database zet ;)
Gewijzigd op 01/01/1970 01:00:00 door Colin aaaaaaa
 
Mebus  Hackintosh

Mebus Hackintosh

05/05/2007 19:23:00
Quote Anchor link
Je ip adress is:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
<?php

echo $_SERVER['REMOTE_ADDR'];

?>


Haha:)
 
Colin aaaaaaa

Colin aaaaaaa

05/05/2007 20:20:00
Quote Anchor link
Hmm, volgende vraag :|

Wat is hier fout aan:

Controleer.php

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
<?php
if (!isset($_GET['controleer']))
echo "Zo gaat dat niet =)";
}

else {
if($_GET['controleer']=='15023') {
$ip = $_SERVER['REMOTE_ADDR'];

mysql_connect('localhost', 'downloaded', 'betaald') or die(mysql_error());
mysql_select_db('downloaded') or die(mysql_error());

$sql_a = mysql_query("INSERT INTO toegestane_mensen (ip) VALUES ('$ip')");
}

else {
echo "De code is verkeerd.";
}

?>


Stukje van index.php:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
Ben je een admin? Typ dan hier de code in:<br />
<form name="form" method="get" action="controleer.php">
  <input name="controleer" type="text">
  <input type="submit" value="Controleer">
</form>


Ja, ik heb bewust voor GET gekozen ;)

O ja, en ik krijg geen errors. Ik heb dit stukje er al in gezet:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
ini_set('display_errors', 1); error_reporting(E_ALL);


Werkt niet.
Gewijzigd op 01/01/1970 01:00:00 door Colin aaaaaaa
 
Jelmer -

Jelmer -

05/05/2007 20:49:00
Quote Anchor link
Er mist een }. Kijk maar, je sluit je 2e statement (de else-lus, eerste van boven) niet af.
 
Colin aaaaaaa

Colin aaaaaaa

05/05/2007 20:56:00
Quote Anchor link
Ah, ik zie het al :)

Ook zag ik net dat ook een { vergeten was ;)

Het werkt nu, bedankt!
 
Klaasjan Boven

Klaasjan Boven

05/05/2007 21:05:00
Quote Anchor link
Toevallig bij Hosting2go?
 
Colin aaaaaaa

Colin aaaaaaa

05/05/2007 21:14:00
Quote Anchor link
Ja, een geweldige host :) Hoezo?
Gewijzigd op 01/01/1970 01:00:00 door Colin aaaaaaa
 



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.