Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]Jak zapisywać wyniki do tablicy
Forum PHP.pl > Forum > Przedszkole
silverwind
Mam pewien skrypt, który po naciśnięciu na button uruchamia się i mierzy czas wykonania się go. Chciałbym aby pięć kolejnych testów pokazywało się jedno po drugim np. wynik 1 wynik, 2 wynik, 3 wynik, 4 wynik, 5 wynik. i liczyło średnią. Zapisywać to do bazy danych czy lepie w tablicy
untorched
W czym problem?
silverwind
tu jest skrypt. Chciałbym żeby $wynik testu zostawał na stronie. Do pięciu wykonanych testów. W co to najlepiej zapisywać w tablicę czy do bazy
[html][/html]


  1. <?php
  2. //$stara_wartosc = ini_set ( 'max_execution_time', 0 );
  3. //error_reporting(0);
  4. $con = mysqli_connect("localhost","root","","my_db");
  5. if($con)
  6. // Check connection
  7. if (mysqli_connect_errno())
  8. {
  9. echo "Failed to connect to MySQL: " . mysqli_connect_error();
  10. }
  11.  
  12. $stoper_start = time(true); // start pomiaru
  13.  
  14. //mierzony skrypt ////////////////////////
  15. usleep(10000);
  16. $query = "INSERT INTO osoby (`Imie`, `Nazwisko`,`Wiek`) VALUES ";
  17.  
  18.  
  19. for($i=0; $i<100000; $i++)
  20. {
  21. $query .= "('imie', 'nazwisko', 'wiek'),";
  22.  
  23. }
  24.  
  25. $query = substr($query, 0, -1); // na końcu nie może być przecinka więc go ucinam
  26. mysqli_query($con,$query);
  27.  
  28.  
  29.  
  30. $stoper_stop = time(true); //koniec pomiaru
  31.  
  32. $wynik=bcsub($stoper_stop, $stoper_start,2);
  33.  
  34. echo $wynik;
  35.  
  36.  
  37.  
  38.  
  39.  
  40.  
  41.  
  42.  
  43.  
  44. mysqli_close($con);
  45. ?>
viking
Jak Ci potrzebne to później do czegoś zapisuj w bazie. Ja tu widzę że zwykła sesja wystarczy.
Pyton_000
Od biedy zapis do pliku z flagą fopen('plik', 'x');

Potem odczyt x linijek.
tete
Najwygodniej zawsze do bazy.
Napisz sobie do tego crona, który będzię czyścił tabelę ze starych rekordów.
Popraw temat, bo tablica to array, a wątek jest o table.
silverwind
Tylko ja ten skrypt inicjuje przez Ajaxa po kliknięciu Button i pojawia mi się czas wykonania tego skryptu i tak chce do pięciu razy. Tu jest reszta kodu
  1. <!DOCTYPE html>
  2.  
  3. <html lang="en">
  4. <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  5. <meta charset="utf-8">
  6. <meta http-equiv="X-UA-Compatible" content="IE=edge">
  7. <meta name="viewport" content="width=device-width, initial-scale=1">
  8. <meta name="description" content="">
  9. <meta name="author" content="">
  10. <link rel="icon" href="Wydajnosc/favicon.ico">
  11.  
  12. <title>Theme Template for Bootstrap</title>
  13.  
  14. <!-- Bootstrap core CSS -->
  15. <link href="Wydajnosc/css/bootstrap.min.css" rel="stylesheet">
  16. <!-- Bootstrap theme -->
  17. <link href="Wydajnosc/css/bootstrap-theme.min.css" rel="stylesheet">
  18.  
  19. <!-- Custom styles for this template -->
  20. <link href="Wydajnosc/css/theme.css" rel="stylesheet">
  21.  
  22. <!-- Just for debugging purposes. Don't actually copy these 2 lines! -->
  23. <!--[if lt IE 9]><script src="../../assets/js/ie8-responsive-file-warning.js"></script><![endif]-->
  24. <script src="./Wydajnosc/ie-emulation-modes-warning.js"></script><style type="text/css"></style><style type="text/css"></style>
  25. <script type="text/javascript">
  26.  
  27.  
  28. if (window.XMLHttpRequest)
  29. {
  30. ObiektXMLHttp = new XMLHttpRequest(); }
  31. else if (window.ActiveXObject)
  32. {
  33. ObiektXMLHttp = new ActiveXObject("Microsoft.XMLHTTP"); }
  34.  
  35. // druga część kodu
  36. function getData(zrodlo, cel) {
  37. if(ObiektXMLHttp)
  38. {
  39. var cel = document.getElementById(cel);
  40. ObiektXMLHttp.open("GET", zrodlo);
  41.  
  42. ObiektXMLHttp.onreadystatechange = function()
  43. {
  44. if (ObiektXMLHttp.readyState == 4)
  45. {
  46. cel.innerHTML = ObiektXMLHttp.responseText;
  47. }
  48. }
  49. // trzecia część kodu
  50. ObiektXMLHttp.send(null); } }
  51. </script>
  52. </head>
  53.  
  54. <body role="document">
  55.  
  56. <!-- Fixed navbar -->
  57. <nav class="navbar navbar-inverse navbar-fixed-top" role="navigation">
  58. <div class="container">
  59. <div class="navbar-header">
  60. <button type="button" class="navbar-toggle collapsed" data-toggle="collapse" data-target="#navbar" aria-expanded="false" aria-controls="navbar">
  61. <span class="sr-only">Toggle navigation</span>
  62. <span class="icon-bar"></span>
  63. <span class="icon-bar"></span>
  64. <span class="icon-bar"></span>
  65. </button>
  66. <a class="navbar-brand" href="Wydajnosc.php">Testowanie Wydajności</a>
  67. </div>
  68. </div>
  69. </nav>
  70.  
  71. <div class="container theme-showcase" role="main">
  72.  
  73. <!-- Main jumbotron for a primary marketing message or call to action -->
  74. <div class="jumbotron">
  75. <h1>Witamy </h1>
  76. <p>Prosze wybrać jedną z trzech możliwości testowanie bazy danych </p>
  77. <p><a href="Wydajnosc.php" class="btn btn-primary btn-lg" role="button"> ť</a></p>
  78. </div>
  79.  
  80.  
  81. <button class="btn btn-lg btn-block btn-success" type="button" onclick = "getData('http://localhost/strona/1.php','Wynik')">Modyfikacja miliiona rekordów z bazy danych </button>
  82.  
  83. <div id="Wynik"> </div>
  84.  
  85.  
  86.  
  87. </div> <!-- /container -->
  88.  
  89. -->
  90. <!-- Bootstrap core JavaScript
  91. ================================================== -->
  92. <!-- Placed at the end of the document so the pages load faster -->
  93. <script src="./Wydajnosc/jquery.min.js"></script>
  94. <script src="./Wydajnosc/bootstrap.min.js"></script>
  95. <script src="./Wydajnosc/docs.min.js"></script>
  96. <!-- IE10 viewport hack for Surface/desktop Windows 8 bug -->
  97. <script src="./Wydajnosc/ie10-viewport-bug-workaround.js"></script>
  98.  
  99.  
  100. <d
untorched
Zbierz to w funkcję zwracającą czas wykonania, wykonaj funkcję 3 razy zapisując czas np. w tablic, wyniki z tablicy dodaj do siebie i podziel przez 3, a otrzymaną wartość wyświetl.
silverwind
Chciałbym, że by to od razu się pojawiało na stronie np przyciskam button wynik1, potem przyciska button do tego dochodzi wynik2 itp aż do 5 i liczy średnią.
nie mam pomysłu jak to zrobić Coś tam trzeba będzie po zmienić w tym skrypcie w Ajaksie.
untorched
Wyżej podałem Ci jedno z rozwiązań. Ewentualnie możesz wysłać X razy zapytanie ajax i wyliczyć średnią z wyników po stronie przeglądarki.
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.