Pagina se incarca greu cu valori din query in array
Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
-
sterica
- Mesaje: 285
Pagina se incarca greu cu valori din query in array
Salutare,
Pentru afisarea datelor in browser mult mai rapid nu vreau sa mai stresez serverul de fiecare data modificand query-ul sql (valorile din urma query-ului sunt de ordinul miilor), vreau ca datele rezultate din query sa le salvez intr-un array ca ulterior array-ul sa il filtrez cu ajutorul valorilor primite dintr-un select.
Am repordus "dorinta" in cod insa am o problema, la deschiderea paginii in browser, pagina se incarca foarte greu, cand schimb valorile din select si apas submit valorile se reincarca facand incarcarea paginii foarte greu.
Cum as putea sa usurez incarcarea paginii?
Cod: Selectaţi tot
<?php
<form action="" method="post">
<select name="an">
<option value="2015">2015</option>
<option value="2016">2016</option>
<option value="2017">2017</option>
</select>
<input type="submit" value="trimite" name="submit">
</form>
coneziunea la baza de date, rezulta variabila $conn
$sql = "SELECT.........";
$stmt = $conn->query($sql);
$row = $stmt->fetchAll(PDO::FETCH_ASSOC);
if(isset($_POST['submit'])){
$an = $_POST['an'];
echo "anul curent: ".$an."<br>";
AllSolicitari($an, $row);
}
function AllSolicitari ($an, $row){
foreach ($row as $value) {
if ($value['ANUL'] == $an){
echo $value['NUME_CLIENT'];
echo $value['ANUL'];
echo "<br>";
}
}
}
Multumesc!
MarPlo
Mesaje: 4343
Salut,
Nu se "streseaza" serverul cu modificare query dupa necesitate, ci doar Mintea care crede ca poate stresa.
La Submit nu are rost sa selectezi datele din toti anii, apoi sa aplici o functie in plus si foreach() ca sa afisezi doar pt. anul selectat, ci selectezi direct in SQL-query randuile din acel an; si doar coloanele care iti trebuiesc; cam asa:
Cod: Selectaţi tot
if(isset($_POST['submit'])){
$an = $_POST['an'];
$sql = "SELECT NUME_CLIENT FROM nume_tabel WHERE ANUL='$an'";
$rows = $conn->query($sql);
// Se parcurg datele, apoi le afiseaza
$resp ='anul curent: '.$an;
while($row = $rows->fetch(PDO::FETCH_ASSOC)) {
$resp .='<br>'.$row['NUME_CLIENT'];
}
echo $resp;
}
- Astfel optimizezi partea de SQL si usurezi codul php.
sterica
Mesaje: 285
Multumesc mult de indrumare, am inceput sa lucrez dupa recomandarea ta.
Subiecte similare
-
parametru din array in query cu laravel
PHP - MySQL - XML
Primul mesaj
Salutare,
din frontend primesc urmatorul array:
$arrClienti =
dupa care ii fac implode
$idClienti = preg_replace('/ /i', '', implode( , ,...
Ultimul mesaj
Dupa multe sapaturi, am ajuns la concluzia ca nu se poate rula ca parametru o matrice. Doar daca parametrul cu matricea este rulat intr-un loop....
-
Id distinct cu insumare valori din array
PHP - MySQL - XML
Primul mesaj
Salutare,
Am un array de obiecte de forma:
$arr =
Cum pot face un array de obiecte cu id-uri distincte dar cu suma pentru cantitate si...
Ultimul mesaj
multumesc foarte mult de ajutor
-
Setare valori din array in select tag
JavaScript - jQuery - Ajax
Primul mesaj
Salut am un array cu orele de functionare
$data = array (
'0400' => '04:00 AM',
'0430' => '04:30 AM',
'0500' => '05:00 AM',
'0530'...
Ultimul mesaj
Testeaza urmatorul cod.
Daca ceva mai trebuie schimbat, incearca si tu sa modifici dupa cum stii, in functie de ce vrei sa obtii.
Open:...
-
Separare array de obiecte în mai multe array-uri
JavaScript - jQuery - Ajax
Primul mesaj
Am un array de obiecte, si pentru crearea unui grafic trebuie să îl împart în 3 array-uri diferite. Cum se face cu JS?
const dataOverview = ;...
Ultimul mesaj
Este simplu, aplici functia map() .
var series1 = dataOverview.map(x => x.series1);
var series2 = dataOverview.map(x => x.series2);
var...
-
Adaugare array in acelasi array JS
JavaScript - jQuery - Ajax
Primul mesaj
Incerc sa adaug un array in acelasi array in javascript, Dar se pare ca nu functioneaza; al treilea element se adauga incontinuu.
Iata codul:
var...
Ultimul mesaj
Nu functioneaza cum vrei fiindca adaugi aceeași referință la array. De aceea, când array-ul se actualizează, cel din interior va fi si el actualizat....
-
Produsul Dot a doua array in Javascript
JavaScript - jQuery - Ajax
Primul mesaj
Cum se poate implementa eficient o metoda dotProduct (pentru a obține produsul Dot din două array) fără a importa alte biblioteci Javascript?
De...
Ultimul mesaj
Iată o metodă.
Se foloseste funcția map() pentru a crea un nou array cu rezultate înmulțite ale fiecărui index, apoi se aplica funcția reduce()...