Ga naar inhoud

molliefout


Aanbevolen berichten

Kun je je nieuwe source code nog eens plaatsen? Want ik begrijp dat er wat dingen zijn veranderd ondertussen.

In je eerste berichtje zie ik een aantal dingen als het echt gaat om betalingen moet je dit NOOIT op deze manier doen. Zeer onveilig.

En ik zie een aantal foutjes in je eerste berichtje staan. Maar plaats even je nieuwe broncode die je tot nu toe hebt, dan ga ik er even naar kijken om het voor je te laten werken.

Leer en weet hoe je SQL code moet gebruiken. Als je dit op een onveilig manier gebruikt kan iedereen die een beetje verstand er van heeft je database kraken. En ik neem aan dat dit niet de bedoeling is.

Groeten,

Leroy

<?php session_start(); error_reporting(E_ALL); /* $dbUser = ".............."; $dbPass = "..........."; $dbHost = "localhost"; mysql_select_db("............."); */

$ipadressen = array ( '82.94.203.80', '82.94.203.81', '82.94.203.82', '82.94.203.83', '82.94.203.84', '82.94.203.85', '82.94.203.86', 'eigen', 'eigen',);if($_SERVER['REQUEST_METHOD'] == "GET"){ $ipadres = $_SERVER['REMOTE_ADDR']; if(in_array($ipadres, $ipadressen)) { if(isset($_GET['betaalnummer'])) $betaalnummer = $_GET['betaalnummer']; $betaalcode = $_GET['betaalcode']; $id = $_GET['id']; mysql_query("INSERT INTO inlogcodes (betaalnummer,betaalcode,id,credits) VALUES ('".$betaalnummer."','".$betaalcode."','".$id."', 100)"); } } print <<<ENDHTML

<table align="center"> <tr> <td width="100"> <font color="white">betaalnummer: </td> <td> <input type="text" name="" maxlength="16" style="width: 150;" value="$betaalnummer"> </td> </tr> <tr> <td width="100"> <font color="white">betaalcode: </td> <td> <input type="text" name="betaalcode" maxlength="16" style="width: 150;" value="$betaalcode"> </td> </tr> <tr> <td width="100"> <font color="white">id: </td> <td> <input type="text" name="id" maxlength="16" style="width: 150;" value="$id"> </td> </tr>

ENDHTML;{ echo 'OK';}?>

maar de link die mollie aangeeft om zelf te testen lukt wel om iets toe te voegen maar via het bellen lukt dit niet

Link naar reactie
Delen op andere sites

ik heb het even wat netter onder elkaar gezet:


<?php session_start();
error_reporting(E_ALL);
/*
    $dbUser = "..............";
    $dbPass = "...........";
    $dbHost = "localhost";
    mysql_select_db(".............");
*/

$ipadressen = array ( '82.94.203.80', '82.94.203.81', '82.94.203.82', '82.94.203.83', '82.94.203.84', '82.94.203.85', '82.94.203.86', 'eigen', 'eigen',);

if($_SERVER['REQUEST_METHOD'] == "GET")
   { 
      $ipadres = $_SERVER['REMOTE_ADDR'];

         if(in_array($ipadres, $ipadressen)) 
           {  
               if(isset($_GET['betaalnummer'])) $betaalnummer = $_GET['betaalnummer'];

                    $betaalcode = $_GET['betaalcode']; 

                          $id = $_GET['id']; mysql_query("INSERT INTO inlogcodes (betaalnummer,betaalcode,id,credits) VALUES ('".$betaalnummer."','".$betaalcode."','".$id."', 100)"); 
            }
    } print <<<ENDHTML

<table align="center">
<tr> <td width="100"> <font color="white">betaalnummer: </td> <td> <input type="text" name="" maxlength="16" style="width: 150;" value="$betaalnummer"> </td> </tr>
<tr> <td width="100"> <font color="white">betaalcode: </td> <td> <input type="text" name="betaalcode" maxlength="16" style="width: 150;" value="$betaalcode"> </td> </tr>
<tr> <td width="100"> <font color="white">id: </td> <td> <input type="text" name="id" maxlength="16" style="width: 150;" value="$id"> </td> </tr>

ENDHTML;{ echo 'OK';}?> 


het viel mij op dat in de tabel, de naam van het vakje betaalnummer leeg is.

het is trouwens ook niet echt veilig om via een GET method betaalmethodes te laten lopen. dit kun je beter via de POST methode of HIDDEN methode.

ik zou de connectie ook zo doen:

[color=#0000BB]<?php
$link [/color][color=#007700]= [/color][color=#0000BB]mysql_connect[/color][color=#007700]([/color][color=#DD0000]'localhost'[/color][color=#007700], [/color][color=#DD0000]'mysql_user'[/color][color=#007700], [/color][color=#DD0000]'mysql_password'[/color][color=#007700]);
if (![/color][color=#0000BB]$link[/color][color=#007700]) {
   die([/color][color=#DD0000]'Could not connect: ' [/color][color=#007700]. [/color][color=#0000BB]mysql_error[/color][color=#007700]());
}
echo [/color][color=#DD0000]'Connected successfully'[/color][color=#007700];
[/color][color=#0000BB]mysql_close[/color][color=#007700]([/color][color=#0000BB]$link[/color][color=#007700]);
[/color][color=#0000BB]?>[/color]

trouwens als je met localhost een connectie wil maken en dat wil je doen via het TCP/IP protocol dan moet je 127.0.0.1 op de plaats van localhost zetten.

Link naar reactie
Delen op andere sites

Ik heb even helemaal je code om gegooit.

Ik weet niet of hij werkt omdat ik je database niet heb, maar voor zover ik denk zal dit wel goed zijn.

Er zit een klein stukje settings bij, deze moet je gewoon goed instellen en dan zou hij het moeten doen.

Voor zover ik kon lezen lijkt het mij alsof je een formuliertje in een database wilt zetten. Onderstaande code doet dat:

<?php 
session_start();
error_reporting(E_ALL);
##########################
###       Settings     ###
##########################
$dbHost = "localhost";      // de host van de database
$dbUser = "---------";      // de gebruikersnaam
$dbPass = "---------";      // het wachtwoord
$dbData = "---------";      // de database om te gebruiken
$target = "naamloos.php";     // locatie van het formulier (locatie van dit bestand)
$ipaddressen = array( 
               '82.94.203.80', 
               '82.94.203.81', 
               '82.94.203.82', 
               '82.94.203.83', 
               '82.94.203.84', 
               '82.94.203.85', 
               '82.94.203.86',
               '62.238.241.6'
           );
$defaultSessions = array(
               'betaalnummer',
               'betaalcode',
               'id'
           );
if(!isset($_SESSION[$defaultSessions[0]])){
   foreach($defaultSessions as $naam){
       $_SESSION[$naam] = "";
   }
}
##########################
###   end Settings     ###
##########################

// create database connection 
/*
if(mysql_connect($dbHost, $dbUser, $dbPass)){
   if(!mysql_select_db($dbData)){
       die ("cannot select the corrent database");
   }
}else{
   die("cannot connect to the database");
}
*/
// end database connection 
if(in_array($_SERVER['REMOTE_ADDR'], $ipaddressen)){
   if($_SERVER['REQUEST_METHOD'] == "POST"){ 
       if(!empty($_POST['betaalnummer'])){
           $betaalnummer = $_POST['betaalnummer'];
       }else{
           $betaalnummer = "";
       }
       $_SESSION['betaalnummer'] = $betaalnummer;
       if(!empty($_POST['betaalcode'])){
           $betaalcode = $_POST['betaalcode'];
       }else{
           $betaalcode = "";
       }
       $_SESSION['betaalcode'] = $betaalcode;
       $id = $_POST['id']; 
       $_SESSION['id'] = $id;
       $sql = 'INSERT INTO inlogcodes (betaalnummer,betaalcode,id,credits) VALUES ("' .$betaalnummer. '", "' .$betaalcode. '", "' .$id. '", "100")'; 
       if(mysql_query($sql)){
           echo "OK";
       }else{
           echo "<strong>ERROR:</strong> " .mysql_error();
       }
   }else{
       print '
           <form method="post" action="' .$target. '">
               <table align="center">
               <tr>
                   <td width="100">betaalnummer: </td>
                   <td>
                       <input type="text" name="" maxlength="16" style="width: 150;" value="' .$_SESSION['betaalnummer']. '">
                   </td>
               </tr>
               <tr>
                   <td>betaalcode: </td>
                   <td>
                       <input type="text" name="betaalcode" maxlength="16" style="width: 150;" value="' .$_SESSION['betaalcode']. '">
                   </td>
               </tr>
               <tr>
                   <td>id: </td>
                   <td>
                       <input type="text" name="id" maxlength="16" style="width: 150;" value="' .$_SESSION['id']. '">
                   </td>
               </tr>
               <tr>
                   <td colspan="2">
                       <input type="submit" name="verzend" value="Verzend" />
                   </td>
               </tr>
               </table>
           </form>
       ';
   }
}else{
   echo "You are not allowed to add";
}

Groeten,

Leroy

Link naar reactie
Delen op andere sites

×
×
  • Nieuwe aanmaken...

Belangrijke informatie

We hebben cookies geplaatst op je toestel om deze website voor jou beter te kunnen maken. Je kunt de cookie instellingen aanpassen, anders gaan we er van uit dat het goed is om verder te gaan.