Autor |
Nachricht |
vali97
Threadersteller
Dabei seit: 10.10.2012
Ort: Bockenau
Alter: 27
Geschlecht:
|
Verfasst Do 14.02.2013 19:23
Titel PHP Variablen Problem. |
|
|
Hallo, ich habe folgenden Code :
Code: |
$sql_result = mysql_query("select * from entry zbs");
$num = counter($sql_result);
$active_num = active_counter($sql_result);
$not_active_num = not_active_counter($sql_result);
mysql_fetch_assoc($sql_result);
|
Wie man sieht habe ich eine Variable mit der MySQL Anweisung die ich aber in 4 verschiedenen Funktionen oder Anweisungen brauch. Mein Problem ist das nur die erste obere Variable $num ausgegen wird. Mir ist bewusst das die Variable ihren Wert verliert, aber finde im Netz keine gute Alternative. Wichtig : Es muss die gleiche Variable sein ! Danke schonmal im Vorraus
|
|
|
|
|
labrar
Dabei seit: 04.04.2006
Ort: -
Alter: 49
Geschlecht:
|
Verfasst Do 14.02.2013 19:30
Titel
|
|
|
Code: |
$sql_result = mysql_query("select * from entry zbs");
$num = mysql_num_rows($sql_result);
$active_num = $num;
$not_active_num = $num;
mysql_fetch_assoc($sql_result); |
Ich habe keine Ahnung was genau du meinst. Aber du rufst jedesmal den selben Wert ab. Also lass doch SQL nach dem ersten mal in Ruhe und nimm für die anderen den Wert der ersten Abfrage. Siehe Code.
Was genau willst du denn machen?
|
|
|
|
|
Anzeige
|
|
|
vali97
Threadersteller
Dabei seit: 10.10.2012
Ort: Bockenau
Alter: 27
Geschlecht:
|
Verfasst Do 14.02.2013 20:05
Titel
|
|
|
labrar hat geschrieben: | Code: |
$sql_result = mysql_query("select * from entry zbs");
$num = mysql_num_rows($sql_result);
$active_num = $num;
$not_active_num = $num;
mysql_fetch_assoc($sql_result); |
Ich habe keine Ahnung was genau du meinst. Aber du rufst jedesmal den selben Wert ab. Also lass doch SQL nach dem ersten mal in Ruhe und nimm für die anderen den Wert der ersten Abfrage. Siehe Code.
Was genau willst du denn machen? |
Danke für die schnelle Antwort.
Aber das hab ich schon versucht. Dann wird mir ein Error angezeigt das zB mysql_fetch_assoc() keinen Wert besitzt, obwohl die Variable $sql_result als Parameter darin steht. Außerdem muss die mysql Anweisung unabhängig von den Funktionen ausgegeben werden, was bei deinem Vorschlag nicht zutrifft.
|
|
|
|
|
vali97
Threadersteller
Dabei seit: 10.10.2012
Ort: Bockenau
Alter: 27
Geschlecht:
|
Verfasst Do 14.02.2013 20:10
Titel
|
|
|
Ich habe es mit Arrays versucht aber dann sind das ja am Ende wieder mehrere Werte, ich will aber nur ein Wert in einer Variable, die nicht beim ersten Aufruf verloren geht.
|
|
|
|
|
pantonine
Dabei seit: 03.03.2011
Ort: gehen Sie bitte weiter…
Alter: -
Geschlecht: -
|
Verfasst Do 14.02.2013 20:11
Titel
|
|
|
Dein Code ist Schrott, Deine Beschreibung ist Schrott und ausgeg(eb)en wird da auch nichts. Und Variablen „verlieren auch nicht ihren Wert“.
Zitat: | nicht beim ersten Aufruf verloren geht. | PHP „rennt“ während des Aufrufs und ist dann fertig. Falls Du die Variablen Request-übergreifend benötigst
a) solltest Du erst mal sagen, wozu
b) sind Sessions Dein Stichwort.
Zuletzt bearbeitet von pantonine am Do 14.02.2013 20:12, insgesamt 1-mal bearbeitet
|
|
|
|
|
vali97
Threadersteller
Dabei seit: 10.10.2012
Ort: Bockenau
Alter: 27
Geschlecht:
|
Verfasst Do 14.02.2013 20:15
Titel
|
|
|
pantonine hat geschrieben: | Dein Code ist Schrott, Deine Beschreibung ist Schrott und ausgeg(eb)en wird da auch nichts. Und Variablen „verlieren auch nicht ihren Wert“. |
Der Code ist nur ein Beispiel.
Okay, da ich mich nicht so gut ausdrücken kann habe ich gegoogelt und ein (ähnliches) Problem gefunden :
http://www.easy-coding.de/mysql-fetch-assoc-mehrfach-ausfuehrbar-t4057.html
Ich habe alle Antworten getestet doch es hat nichts geklappt!
Zuletzt bearbeitet von vali97 am Do 14.02.2013 20:16, insgesamt 1-mal bearbeitet
|
|
|
|
|
pantonine
Dabei seit: 03.03.2011
Ort: gehen Sie bitte weiter…
Alter: -
Geschlecht: -
|
Verfasst Do 14.02.2013 20:17
Titel
|
|
|
Sorry, solange Du nicht beschreibst, was Du erreichen willst, können wir hier alle nur raten.
|
|
|
|
|
vali97
Threadersteller
Dabei seit: 10.10.2012
Ort: Bockenau
Alter: 27
Geschlecht:
|
Verfasst Do 14.02.2013 20:28
Titel
|
|
|
pantonine hat geschrieben: | Sorry, solange Du nicht beschreibst, was Du erreichen willst, können wir hier alle nur raten. |
Okay, dann noch genauer. So, Ich habe eine Tabelle in MySQL erstellt mit verschiedenen Einträgen. Ich will jetzt mit PHP herausfinden wieviel Einträge die Tabelle besitzt, wieviele davon (aktiv) und nicht aktiv sind.
Das ist mein Code Code: | function counter($x)
{
$counter = mysql_num_rows($x);
return $counter;
};
function active_counter($x) {
$active_num = 0;
while($active = mysql_fetch_assoc($x))
{
if($active["aktiv"] == "ja") $active_num = $active_num + 1;
}
return $active_num;
}
function not_active_counter($x)
{
$not_active_num = 0;
while($not_active = mysql_fetch_assoc($x))
{
if($not_active["aktiv"] != "ja") $not_active_num = $not_active_num + 1;
}
return $not_active_num;
}
//Tabelle auswählen und in der Variable $sql_result speichern
$sql_result[1] = mysql_query("select * from entry");
$sql_result[2] = mysql_query("select * from entry");
$sql_result[3] = mysql_query("select * from entry");
//Anzahl der Datensätze zählen und in einer Variable speichern
$num = counter($sql_result[1]);
$active_num = active_counter($sql_result[2]);
$not_active_num = not_active_counter($sql_result[3]);
|
So mein Chef hat gesagt, ist okay aber er will Code sparen. Ich sollte keine Arrays benutzen, sondern nur eine Variable ohne Arrays benutzen,
Code: |
$sql_result = mysql_query("select * from entry");
|
und die in die drei Funktionen als Parameter übergeben. Aber wenn ich das mache wird nur die erste Funktion bearbeitet da die anderen 2 keinen Wert übermittelt bekommen haben. Mein Chef sagt ich sollte mal googeln doch da wird meine Problem nicht beantwortet.
Besser ?
|
|
|
|
|
|
|
|
Ähnliche Themen |
Variablen - Problem
[Mod_Rewrite] Problem mit 2 Variablen
Slideshow Variablen Problem
[Flash 8] Problem mit Variablen in dynamischen MCs
Variablen erstellen
PHP - Variablen in SQL Abfragen
|
|