- Home
- Categorie
- Coding e Sistemistica
- PHP
- Visualizzare "troppi" record
-
In verità è l'unica cosa di cui mi sono accorta. Ho diviso un tipo utente in 2 e non mi ha più dato errore...
Non so se c'è dell'altro. Purtroppo la differenza tra locale e remoto mi spiazza un po'.Ciao
Patpat
-
Occorrerebbe capire se è un problema di timeout o di memoria.
Nel primo caso puoi provare ad inserire a monte dello script
[PHP]
set_time_limit(300);
[/PHP]Nel secondo caso inserisci sempre a monte dello script
[PHP]
ini_set("memory_limit", "128M");
[/PHP]
-
Ho provato entrambe le soluzioni senza risultato. Stesso errore...
-
Domande:
-
Quanti utenti conta la lista ?
-
La lista è memorizzata in un database ? Se si, quale DBMS usi ?
-
Passano piu' di 30 secondi prima di ricevere l'errore ?
-
-
@Blancks said:
Domande:
-
Quanti utenti conta la lista ?
-
La lista è memorizzata in un database ? Se si, quale DBMS usi ?
-
Passano piu' di 30 secondi prima di ricevere l'errore ?
Ciao,
utenti 1517, uso MySQL ed è molto veloce, molto meno di 30 secondi.
Dici che ne vengo fuori ?Patpat
-
-
@Patpat said:
Ciao,
utenti 1517, uso MySQL ed è molto veloce, molto meno di 30 secondi.
Dici che ne vengo fuori ?Patpat
Boh, ci proviamo, sicuro è che non prometto miracoli
Se impiega meno di 30 secondi potrebbe trattarsi di un errore dello script che non viene riportato lasciando quindi al server usare un errore generico.
Tanto per tagliare via la testa al toro, includi ad inizio script
error_reporting(E_ALL); ```E utilizza mysql_error() per recuperare eventuali errori provenienti dal dbms. Se torna un errore piu' dettagliato sarebbe comodo, altrimenti se è appurato che con pochi record funziona ti suggerisco come workaround di giocare col LIMIT nella richiesta SQL ed usare le pagine per generare l'elenco.
-
@Blancks said:
>error_reporting(E_ALL); >```E utilizza mysql_error() per recuperare eventuali errori provenienti dal dbms. Grazie a questo tuo suggerimento mi sono accorta che l'errore non sta proprio dove pensavo, perchè mysql_error() già c'era nel php ma non intercettava nessun tipo di errore. Bene l'errore è qui:
<td><a href="#" onClick="javascript:Cancella(<?php echo $record['utenti_id'] ?>);">Cancella</a></td>
se tolgo onClick ecc. mi visualizza tutti i miei 1517 utenti di quel tipo! Mi ripeto :bho: Avete altri suggerimenti ora? Comunque grazie siete un prezioso aiuto! Patpat
-
Se metti gli apici e togli il # dall'href cambia qualcosa?
[php]<td><a href="" onClick="javascript:Cancella('<?php echo $record['utenti_id'] ?>');">Cancella</a></td>[/php]
-
Macchè, uguale!
Patpat
-
Se installi l'addons per firefox Web Developer, ti da qualche errore quando clicchi sul pulsante?
Cosi capiamo se è un errore Javascript o PHP.
-
Se disattivo javascript mi da errore lo stesso.
In verità come al solito se ho quei pochi record li visualizza, se ho i 1517 ho l'errore.Quindi è il php comunque.... intendevi qualche altra prova?
Grazie
Patpat
-
E' che mi sembra strano che con pochi vada e molti no... Perchè alla fine, non sono un esperto, ma non credo che 1517 siano tanti...
Immaginiamo solo il traffico qua su GT credo che superi i 1517 no?
Quindi algoritmi diversi a parte credo il problema possa essere anche nel Javascript.Potresti riportare il testo della funzione cancella?
-
Sì hai ragione, questo dei pochi o tanti record mi fa uscire di testa scherzo
ecco qui:
<script type="text/javascript"> <!-- function Cancella(id) { if(confirm("Confermi la cancellazione dell'utente?")==true){ document.location = "utenti.php?azione=cancella&utenti_id="+id; } } --> </script>
Ciao
Patpat
-
Prova a modificarlo momentaneamente cosi.
In questo modo lo debugghi (si scrive cosi poi?) eh eh...[php]
<script type="text/javascript">
<!--
function Cancella(id)
{
if(confirm("Confermi la cancellazione dell'utente?")==true)
{
var mylocation;
mylocation="utenti.php?azione=cancella&utenti_id="+id;
alert(mylocation);
document.location = mylocation;
}
}
-->
</script>
[/php]Faccio poi il punto, non ho capito l'errore si genera prima oppure solo quando clicchi sulla cancellazione?
-
Ora provo. Ma in effetti l'errore succede anche se non clicco su cancella.
Ho visto che se cancello onClick per richiamare la cancellazione non ho l'errore.....Già, sto facendo impazzire anche te.
Ciao
Patpat
-
Chi non impazzisce in compagnia non sa che bello sia? Ha ha...
-
Ecco visualizza:
utenti.php?azione=cancella&utenti_id=3153, ma questo sempre quando ho pochi record, perchè altrimenti la lista degli utenti non me la visualizza nemmeno... !
-
La query php che utilizzi per la visualizzazione?
-
$sql = "SELECT * FROM utenti WHERE utenti_lp != 0"; $sql .= " AND utenti_tipoutenti = '28'" . " || utenti_tipoutenti = '29'" . " ORDER BY utenti_ragsoc ASC"; ```Ma mi chiedo perchè se tolgo questo:
onClick="javascript:Cancella(<?php echo $record['utenti_id'] ?>);"
-
A questo punto credo sia un problema di apertura e chiusura di qualche tag....
E lungo tutto il codice della pagina tag di apertura e chiusura compresi?