mysqli probleem

    ICTscripters maakt gebruik van cookies. Door het gebruiken en browsen naar onze site gaat je automatisch akkoord met het gebruik van cookies. Klik hier voor meer informatie

    • mysqli probleem

      Beste ,
      Ik ben er een tijdje uit geweest en niet echt veel van php 7 weet, maar ik ben bezig nu met mijn rpg game maar krijg allemaal foutmeldingen wegens mysqli.
      Ik snap niet wat er fout aan in want deze script heeft altijd gedraag maar nu niet meer.

      Dit zijn de foutmeldingen.

      Notice: Undefined index: login in C:\xampp\htdocs\testtt\_config.php on line 200
      Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\xampp\htdocs\testtt\_config.php on line 200
      Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, null given in C:\xampp\htdocs\testtt\_config.php on line 200
      Notice: Undefined variable: data in C:\xampp\htdocs\testtt\_config.php on line 155
      Notice: Trying to get property 'login' of non-object in C:\xampp\htdocs\testtt\_config.php on line 155
      Warning: mysqli_query() expects at least 2 parameters, 1 given in C:\xampp\htdocs\testtt\_config.php on line 155
      Warning: mysqli_num_rows() expects parameter 1 to be mysqli_result, null given in C:\xampp\htdocs\testtt\_config.php on line 156
      Warning: mysqli_fetch_object() expects parameter 1 to be mysqli_result, null given in C:\xampp\htdocs\testtt\_config.php on line 157

      En nog wel veel meer.

      Dit staat onderander op nummer: 155 tot 157

      Source Code

      1. $dbre = mysqli_query("SELECT *, UNIX_TIMESTAMP(`time`) AS `getime` FROM `jail` WHERE `login`='{$data->login}'");
      2. $jisin = mysqli_num_rows($dbre);
      3. $jail = mysqli_fetch_object($dbre);
    • mysqli_query() expects at least 2 parameters, 1 given
      Je geeft aan mysqli_query één parameter met de SQL-opdracht, maar er mist een tweede parameter. na een blik op de mysqli_query() op PHP.net zien bij bij de procedurele syntax van die functie dat de eerste parameter een verwijzing is naar je connectie, en de tweede de SQL-opdracht is.

      Als je dit al aanpast bij al je queries, ben je al een flink stap verder dan enkel een 'i' toe te voegen, wat niet niet meteen het succes van de hervorming van oude MySQL-functies naar MySQLi-functies.

      Verder zou ik uit oogpunt van efficientie liever mysqli_fetch_assoc gebruiken i.p.v. mysqli_fetch_object()

      Verder ben ik benieuwd waar $data->login vandaan komt, hier zie ik ook een error in.
      Misschien ben je vergeten de class te initialiseren?

      Om een horde aan errors te voorkomen indien je query mislukt, raad ik met klem aan om goede foutafhandeling in te bouwen waarbij je kijkt of je query false is of anders een resource teruggeeft (en dat is geen true ;) ).

      Als je de OO-variant van MySQLi gebruikt, wat ik tevens kan aanraden, dan kan je foutafhandeling makkelijker realiseren de interne classe zelfs uitbreiden met een hoop nuttigs :-).
    • Ik zal daar eens naar kijken, moet er even weer inkomen :D
      De data wat jij bedoelde komt hier vandaan. waarschijnlijk bij de data->login want die staat op 155

      Source Code

      1. $dbre = mysqli_query("SELECT *,
      2. UNIX_TIMESTAMP(`time`) AS `getime` FROM `jail` WHERE
      3. `login`='{$data->login}'");
      4. $jisin = mysqli_num_rows($dbre);
      5. $jail = mysqli_fetch_object($dbre);
    • PHP Source Code

      1. <?php
      2. function safe($ding)
      3. {
      4. if(get_magic_quotes_gpc() == "0")
      5. $var = trim(addslashes($ding));
      6. if(version_compare(phpversion(),"4.3.0") == "-1")
      7. return mysqli_escape_string(htmlspecialchars($ding));
      8. else
      9. return mysqli_real_escape_string(htmlspecialchars($ding));
      10. }
      11. //XSS mogelijkheden via de URL vermijden
      12. $locatie = $_SERVER['REQUEST_URI'];
      13. $array = Array();
      14. $array[] = "mysqli";
      15. $array[] = "query";
      16. $array[] = ")";
      17. $array[] = ";";
      18. $array[] = "}";
      19. $array[] = "INSERT";
      20. $array[] = "%40";
      21. $array[] = "DROPTABLE";
      22. $array[] = "TRUNCATE";
      23. //Beveiliging met een Foreach stukje
      24. foreach($array As $foutbezig)
      25. {
      26. if(stristr($foutbezig,$locatie))
      27. {
      28. echo "Onbekende fout is opgetreden.";
      29. exit();
      30. }
      31. }
      32. $url = substr($_SERVER['REQUEST_URI'], 1);
      33. if(stristr("%", $url) or stristr(";", $url) or stristr("'", $url) or stristr("<", $url) or stristr(">", $url) or stristr(")", $url) or
      34. stristr("query", $url) or stristr("mysqli", $url) or stristr('"', $url) or stristr('config', $url) or stristr('ingelogd', $url) or
      35. stristr("query", $url))
      36. {
      37. echo "Onbekende fout.";
      38. }
      39. /*
      40. $locatie = $_SERVER['REQUEST_URI'];
      41. $array = Array();
      42. $array[] = "mysqli";
      43. $array[] = "query";
      44. $array[] = ")";
      45. $array[] = ";";
      46. $array[] = "}";
      47. $array[] = "INSERT";
      48. $array[] = "DELETE";
      49. $array[] = "UPDATE";
      50. $array[] = "%40";
      51. $array[] = "DROPTABLE";
      52. $array[] = "TRUNCATE";
      53. foreach($array As $foutbezig){
      54. if(preg_match($foutbezig,$locatie)){
      55. echo '<body><center><link href="style.css" rel="stylesheet" type="text/css"><table width="60%"><tr><td class="subTitle">Bewerking afgebroken</td></tr><tr><td class="mainTxt"><br /><b>Er is een fout opgetreden.</b><br /><br />Je hebt een ongeldige url proberen te openen.<br>Dit kan per ongeluk komen, of je probeert het systeem expres te vernielen.<br><br><center>Klik <a href="http://www.downup-terror.nl/">hier</a> om terug naar Downup-terror te gaan.</center></td></tr></table>';
      56. $fp = fopen("admin/buglog.txt", "a");
      57. $time = date("d-m-Y H:i:s");
      58. $stringData = "Bewerking afgebroken,".$_SESSION['login'].",".$time.",".$_SERVER['REQUEST_URI'].",".$_SERVER['REMOTE_ADDR'].","[email protected]($_SERVER['REMOTE_ADDR']).""."<br />\n";
      59. fwrite($fp, $stringData);
      60. fclose($fp);
      61. exit();
      62. }
      63. }
      64. */
      65. $con=mysqli_connect("localhost","root","","street");
      66. // Check connection
      67. if (mysqli_connect_errno())
      68. {
      69. echo "<html>
      70. <head>
      71. <title>Downup-terror - Database problemen</title>
      72. <link href='style.css' rel='stylesheet' type='text/css'>
      73. </head>
      74. <body>
      75. <center><table width='500' align='center'>
      76. <tr><td class='subTitle'><b>Database problemen</b></td></tr>
      77. <tr><td class='mainTxt'><br><img src='images/icons/information.png' width='16' height='16' border='0'> <b>Database problemen</b><br>
      78. <br>Er is een fout opgetreden tijdens het verbinding maken met de database.<br>
      79. We proberen de fout zo snel mogelijk op te lossen.<br><br>
      80. Onze excuses voor het ongemak.<br><br>
      81. Met vriendelijke groet<br>
      82. Downup-terror Crew</td></tr>
      83. </table></center>
      84. </body>
      85. </html>" . mysqli_connect_error();
      86. }
      87. mysqli_select_db($con,"street");
      88. mysqli_close($con);
      89. if(isset($_SESSION['login'])){
      90. if($_SESSION['login'] != $_SESSION['testlogi']){ $fp = fopen("admin/buglog.txt", "a"); $time = date("d-m-Y H:i:s"); $stringData = "Inloggen op ander account,".$_SESSION['login'].",".$time.",".$_SERVER['REQUEST_URI'].",".$_SERVER['REMOTE_ADDR'].","[email protected]gethostbyaddr($_SERVER['REMOTE_ADDR']).""."<br />\n"; fwrite($fp, $stringData); fclose($fp); echo'Foutmelding: Je bent van '.$_SESSION['testlogi'].' op '.$_SESSION['login'].' ingelogd!<br>Meld deze fout onmiddelijk. Toegang geweigerd.'; exit; }
      91. if($_SESSION['ips'] != $_SERVER['REMOTE_ADDR']){ $fp = fopen("admin/buglog.txt", "a"); $time = date("d-m-Y H:i:s"); $stringData = "IP verwisseld,".$_SESSION['login'].",".$time.",".$_SERVER['REQUEST_URI'].",".$_SERVER['REMOTE_ADDR'].","[email protected]gethostbyaddr($_SERVER['REMOTE_ADDR']).""."<br />\n"; fwrite($fp, $stringData); fclose($fp); session_unset($_SESSION['pass']); session_destroy($_SESSION['login']); echo'Foutmelding: Je bent van IP verwisseld!<br>Dit wordt als een hackpoging gezien.<br>Meld deze fout onmiddelijk. Toegang geweigerd.'; exit; }
      92. $dbres = mysqli_query("SELECT *,UNIX_TIMESTAMP(`pc`) AS `pc`,UNIX_TIMESTAMP(`kc`) AS `kc`,UNIX_TIMESTAMP(`crime`) AS `crime`,UNIX_TIMESTAMP(`ac`) AS `ac`,UNIX_TIMESTAMP(`ar`) AS `ar`,UNIX_TIMESTAMP(`gmtijd`) AS `gmtijd` FROM `users` WHERE `login`='{$_SESSION['login']}'");
      93. $data = mysqli_fetch_object($dbres);
      94. $blata = mysqli_num_rows($dbres);
      95. include("_rangen.php");
      96. include("_tijden.php");
      97. include("_rangmsg.php");
      98. if($blata == 0 || $data->level == -1){ session_destroy(); die("Tot ziens"); }
      99. if($_SERVER['SCRIPT_NAME'] != '/status.php' && $_SERVER['SCRIPT_NAME'] != '/status_img.php'){
      100. $spti = (time() - $data->speeltijd2);
      101. if($spti > 0 && $spti < 46){ mysqli_query("UPDATE `users` SET `speeltijd`=`speeltijd`+'{$spti}' WHERE `login`='{$data->login}'"); }
      102. mysqli_query("UPDATE `users` SET `speeltijd2`=".time()." WHERE `login`='{$data->login}'");
      103. mysqli_query("UPDATE `users` SET `online`=NOW() WHERE `login`='{$data->login}'");
      104. }
      105. }
      106. $datum = date("d-m-y", time());
      107. $week = date("W", time());
      108. $test ="SELECT * FROM `statistieken` WHERE `week`='$week' && `datum`='$datum'";
      109. if(!$test){ mysqli_query("INSERT INTO `statistieken` (`week`,`datum`) VALUES('$week','$datum')"); mysqli_query("UPDATE `users` SET `online2`='0'") or die(mysqli_error()); }
      110. if(check_login()) {
      111. if($data->online2 == 0){
      112. mysqli_query("UPDATE `statistieken` SET `online`=`online`+1 WHERE `week`='$week' && `datum`='$datum'") or die(mysqli_error());
      113. mysqli_query("UPDATE `users` SET `online2`=1 WHERE login = '".$_SESSION['login']."'") or die('mysqli_error()');
      114. }
      115. }
      116. $dbre = mysqli_query("SELECT *, UNIX_TIMESTAMP(`time`) AS `getime` FROM `jail` WHERE `login`='{$data->login}'");
      117. $jisin = mysqli_num_rows($dbre);
      118. $jail = mysqli_fetch_object($dbre);
      119. if($jisin == 1){
      120. $tim = ($jail->getime - time());
      121. if($tim == 1){ $time = gmdate('s', $tim); $word = seconde; $boete = $jail->boete; }
      122. elseif($tim < 61){ $time = gmdate('s', $tim); $word = seconden; $boete = $jail->boete; }
      123. else { $time = gmdate('i:s', $tim); $word = minuten; $boete = $jail->boete; }
      124. }
      125. mysqli_query("DELETE FROM `jail` WHERE UNIX_TIMESTAMP(`time`)-UNIX_TIMESTAMP(NOW()) < 0");
      126. if($data->xp < 10){ $jailtime = (TIME() + 20); }
      127. elseif($data->xp < 20){ $jailtime = (TIME() + 30); }
      128. elseif($data->xp < 50){ $jailtime = (TIME() + 60); }
      129. elseif($data->xp < 150){ $jailtime = (TIME() + 90); }
      130. elseif($data->xp < 500){ $jailtime = (TIME() + 120); }
      131. elseif($data->xp < 1000){ $jailtime = (TIME() + 180); }
      132. elseif($data->xp < 2000){ $jailtime = (TIME() + 190); }
      133. elseif($data->xp < 3000){ $jailtime = (TIME() + 230); }
      134. elseif($data->xp < 4500){ $jailtime = (TIME() + 270); }
      135. elseif($data->xp < 6000){ $jailtime = (TIME() + 320); }
      136. elseif($data->xp < 8000){ $jailtime = (TIME() + 370); }
      137. elseif($data->xp < 11000){ $jailtime = (TIME() + 420); }
      138. elseif($data->xp < 15000){ $jailtime = (TIME() + 480); }
      139. elseif($data->xp < 20000){ $jailtime = (TIME() + 540); }
      140. elseif($data->xp >= 20000){ $jailtime = (TIME() + 600); }
      141. $dete = mysqli_query("SELECT * FROM `[detective]` WHERE UNIX_TIMESTAMP(`time`)-UNIX_TIMESTAMP(NOW()) < 0");
      142. while($det = mysqli_fetch_object($dete)){
      143. $sus = mysqli_fetch_object(mysqli_query("SELECT * FROM `users` WHERE `login`='{$det->van}'"));
      144. $vic = mysqli_fetch_object(mysqli_query("SELECT * FROM `users` WHERE `login`='{$det->naar}'"));
      145. if($det->stad == $vic->stad){ mysqli_query("INSERT INTO `messages`(`time`,`from`,`to`,`subject`,`message`) values(NOW(),'Notificatie','{$sus->login}','Gevonden','Je detective heeft {$vic->login} gevonden in {$det->stad}.')"); mysqli_query("DELETE FROM `detective` WHERE `naar`='{$vic->login}' AND `stad`='{$det->stad}'"); }
      146. mysqli_query("DELETE FROM `detectives` WHERE UNIX_TIMESTAMP(`time`)-UNIX_TIMESTAMP(NOW()) < 0");
      147. }
      148. $ip = $_SERVER['REMOTE_ADDR'];
      149. $iban = mysqli_fetch_object(mysqli_query("SELECT * FROM `bans` WHERE `IP`='$ip'"));
      150. if($iban){ echo '<head><title>Downup-terror - Verbannen</title><link rel="stylesheet" type="text/css" href="style.css">
      151. </head><body><center><table align="center" width="600"><tr><td class="subTitle"><b>Geen toegang</b></td></tr>
      152. <tr><td class="mainTxt"><br><font color="red"><b>Geen toegang: je bent verbannen!</b></font><br><br>Reden van de ban: '.$iban->reden.'<br><br>
      153. Ben je het oneens met je ban? Stuur een e-mail naar [email protected]<br><br>
      154. Met vriendelijke groet,<br>Downup-terror Crew<br></td></tr></table></body></html>';
      155. unset($_SESSION['login']); exit; }
      156. function check_login() {
      157. $logicheck = mysqli_num_rows(mysqli_query("SELECT * FROM `users` WHERE `login`='{$_SESSION['login']}'"));
      158. if($logicheck == 0) {
      159. unset($_SESSION['login']);
      160. return FALSE;
      161. }else { return TRUE; }
      162. }
      163. $minuut = date("i", time());
      164. $hour = date("G", time());
      165. $day = date("z", time());
      166. $dbres = mysqli_query("SELECT * FROM `cron` WHERE `name`='beurs'");
      167. while($beurs = mysqli_fetch_object($dbres)){
      168. if($beurs->time != $minuut && $beurs->test1 != 1){ mysqli_query("UPDATE `cron` SET `test1`='1' WHERE `name`='beurs'"); include("_cron-minuut.php"); }
      169. mysqli_query("UPDATE `cron` SET `test1`='0' WHERE `name`='beurs'");
      170. }
      171. $dbres = mysqli_query("SELECT * FROM `cron` WHERE `name`='uur'");
      172. while($uur = mysqli_fetch_object($dbres)){
      173. if($uur->time != $hour && $uur->test1 != 1){ mysqli_query("UPDATE `cron` SET `test1`='1' WHERE `name`='uur'"); include("_cron-uur.php"); }
      174. mysqli_query("UPDATE `cron` SET `test1`='0' WHERE `name`='uur'");
      175. }
      176. $dbres = mysqli_query("SELECT * FROM `cron` WHERE `name`='dag'");
      177. while($dag = mysqli_fetch_object($dbres)){
      178. if($dag->time != $day && $dag->test1 != 1){ mysqli_query("UPDATE `cron` SET `test1`='1' WHERE `name`='dag'"); include("_cron-dag.php"); }
      179. mysqli_query("UPDATE `cron` SET `test1`='0' WHERE `name`='dag'");
      180. }
      181. ?>
      Laat alles zien
    • Als ik deze code zie krijg ik opeens een flinke trek in spaghetti als avondeten. :P

      Met een brij aan deze code kan je gewoon niet meer werken. Ik zou liever zeggen:
      Gooi het in de vuilnisbak en ga terug naar de tekentafel. Ik zie zelfs al een hoop vage beveiligingen die nergens op slaan, onduidelijk geformuleerde SQL-queries en een shitload aan niet duidelijk ingesprongen statements. (99 t/m 102 is al een waar drama om te zien)

      Zo te zien is dit een criminele Criminalz-game uit de jaren 2009 ofzo. Die wil je niet eens meer draaien, laat staan debuggen.

      Ik vraag me eigenlijk af wat mensen nog bezielt om aan zulke oer-oude slecht geschreven en ongedocumenteerde scripts te willen sleutelen.
    • AarClay wrote:

      Als ik deze code zie krijg ik opeens een flinke trek in spaghetti als avondeten. :P

      Met een brij aan deze code kan je gewoon niet meer werken. Ik zou liever zeggen:
      Gooi het in de vuilnisbak en ga terug naar de tekentafel. Ik zie zelfs al een hoop vage beveiligingen die nergens op slaan, onduidelijk geformuleerde SQL-queries en een shitload aan niet duidelijk ingesprongen statements. (99 t/m 102 is al een waar drama om te zien)

      Zo te zien is dit een criminele Criminalz-game uit de jaren 2009 ofzo. Die wil je niet eens meer draaien, laat staan debuggen.

      Ik vraag me eigenlijk af wat mensen nog bezielt om aan zulke oer-oude slecht geschreven en ongedocumenteerde scripts te willen sleutelen.

      Ziet er meer uit als een spatieloze code weergave vanuit deze website....
    • Bedrijfsportaal wrote:

      AarClay wrote:

      Als ik deze code zie krijg ik opeens een flinke trek in spaghetti als avondeten. :P

      Met een brij aan deze code kan je gewoon niet meer werken. Ik zou liever zeggen:
      Gooi het in de vuilnisbak en ga terug naar de tekentafel. Ik zie zelfs al een hoop vage beveiligingen die nergens op slaan, onduidelijk geformuleerde SQL-queries en een shitload aan niet duidelijk ingesprongen statements. (99 t/m 102 is al een waar drama om te zien)

      Zo te zien is dit een criminele Criminalz-game uit de jaren 2009 ofzo. Die wil je niet eens meer draaien, laat staan debuggen.

      Ik vraag me eigenlijk af wat mensen nog bezielt om aan zulke oer-oude slecht geschreven en ongedocumenteerde scripts te willen sleutelen.
      Ziet er meer uit als een spatieloze code weergave vanuit deze website....
      Als je criminalz-code kent, dan denk je wel anders ;).