PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Bestimmten berich erst später sichtbar



isaack
03.04.2010, 11:38
hallo,

ich möchte bei mir einen link erst ab 5000 ap anzeigen lassen.
jetzt habe ich mir den code hier besorg und auch eingebaut:

<?
$user = mysql_fetch_array(db_query("SELECT `bp`, `bpg` FROM ".$db_prefix."_kontodaten WHERE uid=".$_SESSION['uid']." LIMIT 1"));
if ($user['bp'] + $user ['bpg'] > 5000) {
<li>&nbsp;&nbsp;<a href="?content=/bonustausch">Tauschbox BL zu KL</a><br></li> } ?>

jedoch immer wenn ich das mache dann ist bei mir auf der seite nur noch der header zu sehen.
ist der code den richtig oder nicht?
wenn nein kann mir jemand diesen berichtigen?

gruß isaack

Holstenjungs
03.04.2010, 12:41
<?
$user = mysql_fetch_array(db_query("SELECT `bp`, `bpg` FROM ".$db_prefix."_kontodaten WHERE uid=".$_SESSION['uid']." LIMIT 1"));
if (($user['bp']+$user ['bpg']) > 5000) {
echo '<li>&nbsp;&nbsp;<a href="?content=/bonustausch">Tauschbox BL zu KL</a><br></li>';
}
?>

jpwfour
03.04.2010, 12:45
Man darf HTML nicht direkt in PHP Bereichen verwenden, 2 Möglichkeiten wären:


<?php
$user = mysql_fetch_array(db_query("SELECT `bp`, `bpg` FROM ".$db_prefix."_kontodaten WHERE uid=".$_SESSION['uid']." LIMIT 1"));
if ($user['bp'] + $user ['bpg'] > 5000) {
?>
<li>&nbsp;&nbsp;<a href="?content=/bonustausch">Tauschbox BL zu KL</a><br></li>
<?php } ?> oder

<?php
$user = mysql_fetch_array(db_query("SELECT `bp`, `bpg` FROM ".$db_prefix."_kontodaten WHERE uid=".$_SESSION['uid']." LIMIT 1"));
if ($user['bp'] + $user ['bpg'] > 5000) {
echo '<li>&nbsp;&nbsp;<a href="?content=/bonustausch">Tauschbox BL zu KL</a><br></li>';
} ?>

EDIT. hm, zu langsam

isaack
03.04.2010, 12:50
habe jetzt alle 3 ausprobiert.
aber alle drei zeigen keine wirkung.

Holstenjungs
03.04.2010, 12:50
Zu langsam, dafür aber mit Erklärung. ;) Die habe ich mir gespart.

* EDIT *
Was heißt denn "zeigen keine Wirkung" ?
Gibt es ne Fehlermeldung?
Bleibt die Seite immer noch weiß?
Wird einfach alles geladen?

isaack
03.04.2010, 12:52
es steht der link immer noch in der liste auch bei user die unter 5000 ap sind und es wird auch alles geladen.

Holstenjungs
03.04.2010, 12:54
Was wird denn in den Feldern "bp" und "bpg" gespeichert?

isaack
03.04.2010, 12:57
bg= Ap
bpg= AP gesammt

Holstenjungs
03.04.2010, 12:58
Und was ist dort in den Feldern eingetragen an Zahlen?

isaack
03.04.2010, 13:01
naja zahlen halt. :-)
kannst die frage anders stellen?

Holstenjungs
03.04.2010, 13:02
Ja, kann ich. Was genau steht in der Zeile von deinem Usernamen und den Spalten "bg" und "bgp" drin?

isaack
03.04.2010, 13:05
also ich glaube ich habe den fehler.
die bg usw stehen bei vms_kontodaten drin und hier wird doch aber user abgefragt. kann das sein das das da ein falscher befehl ist?

eine direkte spalte user habe ich jetzt nicht gesehen.
bei den den anderen beiden steht das drin was ich bereists geschrieben habe. kann auch sein ich stehe gerade wieder auf dem schlauch und komme nicht mit.

Holstenjungs
03.04.2010, 13:09
Richtig. Es wird bei dem jeweils eingeloggten User geschut welche Werte in den beiden Spalten bg und bgp drin stehen. Ergeben die zusammen mehr als 5000 wird der Link angezeigt. Deshalb wäre es ja interessant zu wissen welche Zahlen da drin stehen. Die sind ja für jeden user anders.

isaack
03.04.2010, 13:13
ok habe mein fehler schon gefunden.
bitte sagt nichts.
ich hatte schon mehr als 5000.
ich danke dir trotzdem für die hilfe.

Holstenjungs
03.04.2010, 13:14
Kein Thema. Kann mal passieren. ;)

Sam2004
22.10.2011, 11:44
Moin,
ich hab mir mal die Nette Idee hier, zu eigen gemacht, aber leider hat sie einen kleinen Schönheitsfehler...man kann entsprechende Datei trotzdem per Browsereingabe aufrufen, auch wenn man die benötigten AP noch nicht zusammen hat.. Ist ja dann letztendlich nicht im Sinne des Erfinders.

Und nun zur (rhetorischen) Preisfrage:
Wie unterbinden?
Bringt es was, in entsprechender Datei was reinzuschreiben, á la:
if xxx ap dann frei?!

Oder wäre ein Zugangskey eine alternative? Für weitere Vorschläge bin ich gern offen.

Danke schon mal.
LG

hankfromhelvete
22.10.2011, 12:33
Bringt es was, in entsprechender Datei was reinzuschreiben, á la:
if xxx ap dann frei?!

Wäre am sinnvollsten. Nen Zugangskey könnte man erraten oder einfach von einem anderen User bekommen.

Sam2004
22.10.2011, 12:52
Wäre am sinnvollsten. Nen Zugangskey könnte man erraten oder einfach von einem anderen User bekommen.
Das erraten käme weniger in betracht, aber eben das weiter sagen, daher fällt das wohl auch untern Tisch.

Frage hab:
Warum geht die Abfrage nicht mit einer Spalte?
Zum Beispiel so:


<?
$user = mysql_fetch_array(db_query("SELECT `bp` FROM ".$db_prefix."_kontodaten WHERE uid=".$_SESSION['uid']." LIMIT 1"));
if (($user['bp']) > 0) {
echo '<li><a href="?content=/XXXXXX"> XXXX</a>
';}
?>
Ich wollte nur die Tages AP als Vorgabe nehmen, aber das geht nicht.
Wenn Tages und Gesamt AP abgefragt werden, funzt es wie es soll.
Hab ich nen denk oder codefehler?! :der:

Und in die Dateien dann den Code so, und am Ende mit Klammer dicht machen?

Danke noch für den Tipp :biggrin1:

LG

Exportforce
22.10.2011, 15:11
Ok fragen wir anders: Hast DU denn mit dem Account mit dem du testest WENIGER als die gewünschten AP ?

Sam2004
22.10.2011, 15:25
Der Testaccount, hat die erforderlichen Vorgaben, damit der Link sichtbar wird.

Wie eben schon geschrieben, wenn beide Spalten abgefragt werden (Tages AP + Gesamt AP), funzt es, daher kann ich mir grad kein Reim drauf machen.

Sicherlich könnte ich noch was einbauen, damit was anderes heran gezogen werden kann damit es funktioniert wie es soll, aber muss ja nicht für jeden Quatsch was extra einbauen.

Daher erhoff ich mir hier grad ein Rat, warum das nicht geht.

LG

hankfromhelvete
23.10.2011, 04:55
Versuchs mal so. Sollte eigentlich funktionieren.


$user = mysql_fetch_array(db_query("SELECT `bp` FROM ".$db_prefix."_kontodaten WHERE uid=".$_SESSION['uid']." LIMIT 1"));
if ($user['bp'] > 0) {
echo '<li><a href="?content=/XXXXXX"> XXXX</a></li>
';}


Und in die Dateien dann den Code so, und am Ende mit Klammer dicht machen?

Richtig.

Sam2004
23.10.2011, 08:14
Versuchs mal so. Sollte eigentlich funktionieren.


$user = mysql_fetch_array(db_query("SELECT `bp` FROM ".$db_prefix."_kontodaten WHERE uid=".$_SESSION['uid']." LIMIT 1"));
if ($user['bp'] > 0) {
echo '<li><a href="?content=/XXXXXX"> XXXX</a></li>
';}

Richtig.
Mein Held :first: Danke Dir. Hab auch schon gesehen wo mein Fehler war^^ :frusty:

LG