Добрый вечер, у меня такой вопрос. Код (Text): $q = dbquery("SELECT * FROM `graph` WHERE `id`='".$id."'"); $q = dbarray_fetch($q); При каждом обращение к файлу, выполняется данный запрос. Можно ли поместить информацию с запроса в сессии? Примерно хочу так Код (Text): session_start(); if (!isset($_SESSION['counter'])){ $q = dbquery("SELECT * FROM `graph` WHERE `id`='".$id."'"); $q = dbarray_fetch($q); $_SESSION['counter']=$q; }else{ //тут уже вытаскивать из ссесии } ; Можно ли такое делать? И будет ли это лучше чем постоянно просить запрос у базы?
Что то подвисает при опросе, долго думает. Код (Text): <?php // MYSQL DB + others include '../../../maincore.php'; $id = $_GET['id']; $id = htmlspecialchars(mysql_real_escape_string($id )); if(is_numeric($id)){ $q = dbquery("SELECT * FROM `amx_graph` WHERE `id`='".$id."'"); //Вывод $q = dbarray_fetch($q); } if($q['00'] == ''){ $q['00'] = '0'; $q['01'] = '0'; $q['02'] = '0'; $q['03'] = '0'; $q['04'] = '0'; $q['05'] = '0'; $q['06'] = '0'; $q['07'] = '0'; $q['08'] = '0'; $q['09'] = '0'; $q['10'] = '0'; $q['11'] = '0'; $q['12'] = '0'; $q['13'] = '0'; $q['14'] = '0'; $q['15'] = '0'; $q['16'] = '0'; $q['17'] = '0'; $q['18'] = '0'; $q['19'] = '0'; $q['20'] = '0'; $q['21'] = '0'; $q['22'] = '0'; $q['23'] = '0'; } // x arrays $c1 = $q['00']; $c2 = $q['01']; $c3 = $q['02']; $c4 = $q['03']; $c5 = $q['04']; $c6 = $q['05']; $c7 = $q['06']; $c8 = $q['07']; $c9 = $q['08']; $c10 = $q['09']; $c11 = $q['10']; $c12 = $q['11']; $c13 = $q['12']; $c14 = $q['13']; $c15 = $q['14']; $c16 = $q['15']; $c17 = $q['16']; $c18 = $q['17']; $c19 = $q['18']; $c20 = $q['19']; $c21 = $q['20']; $c22 = $q['21']; $c23 = $q['22']; $c24 = $q['23']; // y arrays $y1 = 21; $y2 = 18; $y3 = 15; $y4 = 12; $y5 = 9; $y6 = 6; $y7 = 3; $y8 = 0; //Максимальное число массива. $max = max($q['00'], $q['01'], $q['02'], $q['03'], $q['04'],$q['05'],$q['06'],$q['07'],$q['08'],$q['09'],$q['10'],$q['11'],$q['12'],$q['13'],$q['14'],$q['15'],$q['16'],$q['17'],$q['18'],$q['19'],$q['20'],$q['21'],$q['22'],$q['23']); $pmax=$max; //Наибольшее значение $pmax2=round($max/2); //Средние значение. Наибольшее делим на 2 // don't forget to update the path here require 'libchartx/GoogleChart.php'; $chart = new GoogleChart('lc', 150, 45); // punctele pe grafic $chart->chf = 'bg,s,00000077'; // punctele pe grafic $chart->setGridLines(14,50); $chart->setScale(0,$pmax+2); $data = new GoogleChartData(array($c1,$c2,$c3,$c4,$c5,$c6,$c7,$c8,$c9,$c10,$c11,$c12,$c13,$c14,$c15,$c16,$c17,$c18,$c19,$c20,$c21,$c22,$c23,$c24)); $data->setThickness(1); $chart->addData($data); //$chart->grid_lines(20,50,1,5); // linia din stana $y_axis = new GoogleChartAxis('y'); $y_axis->setDrawTickMarks(false)->setLabels(array(0,$pmax2,$pmax)); $y_axis->setLabelColor('ffffff'); $y_axis->setFontSize('8'); $chart->addAxis($y_axis); // linia de jos $x_axis = new GoogleChartAxis('x'); $x_axis->setDrawTickMarks(false)->setLabels(array($y8,$y7,$y6,$y5,$y4,$y3,$y2,$y1)); $x_axis->setLabelColor('ffffff'); $x_axis->setFontSize('8'); $chart->addAxis($x_axis); header('Content-Type: image/png'); echo $chart; ?>
сколько в бд записей? Какие есть индексы? Чувак, если тебя вопрос про индексы в бд ставит тебя в тупик, то дело плохо с подготовкой. БД не будет работать быстро без индексов на больших базах. Праймари кей какой? Сделай экспорт бд без данных и покажи тут что там.