Hi @all
ich hab eine kleine Frage zu einem Skript, bzw einem Vorgang in diesem Skript.
Ich habe eine Seite bei der 10 Einträge aus einer Sql Tabelle per order by rand() angezeigt werden. Nun kann der User auf "seite neu laden" klicken und andere 10 einträge werden angezeigt.
Insgesamt wurden aus 3 Tabellen verschiedene Daten geholt, welche dann auch noch verarbeitet wurden.
bsp.:
ok das nur als Beispiel... so werden die Daten verarbeitet. Die Session zuweisung mal überlesen. Diese Datenverarbeitung wurde bei jedem Seitenneuaufruf gestartet (ohne Sessionzuweisung)... d.h. immer wenn der user auf den button geklickt hat wurden die Daten aus der DB geholt und verarbeitet. Ich hatte mir überlegt, dass das die DB mit der zeit sehr belasten könnte und auch die rechenzeit unnötig rauszögert, wenn die daten jedesmal neu verarbeitet werden. Also hab ich mir überlegt, wie man das ändern kann, sodass die Daten nur einmal aus der DB geholt und verarbeitet werden. Ich hab dann n Counter eingebaut, der bei Klick auf den button immer +1 mitzählt.
Wenn der nun bei 1 ist - also beim ersten aufruf der seite, werden die Daten aus der DB geholt und einmal verarbeitet. DIe Daten werden dann in die Session gespeichert (siehe oben) sodass ich die daten für die folgenden seitenaufrufe auch hab.
Ist diese Vorgehensweise sinnvoll?
verringert sich die REchenzeit wirklich?
wie ist das mit der sicherheit? ich hänge die SESSIONId nicht an die links an. Soweit ich weiss werden die dann automatisch in COokies gespeichert - wenn das so ist: können die dann vom User manuell auf dem Rechner verändert werden?
hoffe ihr könnt mir dazu was sagen...
danke
cya CrazyPip
ich hab eine kleine Frage zu einem Skript, bzw einem Vorgang in diesem Skript.
Ich habe eine Seite bei der 10 Einträge aus einer Sql Tabelle per order by rand() angezeigt werden. Nun kann der User auf "seite neu laden" klicken und andere 10 einträge werden angezeigt.
Insgesamt wurden aus 3 Tabellen verschiedene Daten geholt, welche dann auch noch verarbeitet wurden.
bsp.:
PHP-Code:
$sl = sql_query("SELECT * FROM SELECTION WHERE lid = ".$lto." OR lid = " . $lfrom);
while ($ssl = mysql_fetch_array($sl))
{
# Tabellen name definieren
##########################
switch($ssl['lid']){
case $lfrom:
$table = $from_short;
break;
case $lto:
$table = $to_short;
break;
default:
$table = $from_short;
break;
}
$slc = $table . "_" . $ssl['fieldname'];
# Deklarieren
#############
$selection['table']['id'][] = $ssl['id'];
$selection['table']['name'][] = $slc;
$selection['table']['size'][] = $ssl['fontsize'];
$selection['table']['count'][] = $n;
$_SESSION['standart']['selection'] = $selection;
$n++;
# Array für den Buttontext erstellen
####################################
$_SESSION['standart']['buttontext'][$slc] = $ssl['short'];
}
Wenn der nun bei 1 ist - also beim ersten aufruf der seite, werden die Daten aus der DB geholt und einmal verarbeitet. DIe Daten werden dann in die Session gespeichert (siehe oben) sodass ich die daten für die folgenden seitenaufrufe auch hab.
Ist diese Vorgehensweise sinnvoll?
verringert sich die REchenzeit wirklich?
wie ist das mit der sicherheit? ich hänge die SESSIONId nicht an die links an. Soweit ich weiss werden die dann automatisch in COokies gespeichert - wenn das so ist: können die dann vom User manuell auf dem Rechner verändert werden?
hoffe ihr könnt mir dazu was sagen...
danke
cya CrazyPip
Kommentar