Kennst Du schon? - Panel (Frage) |
|
|
Veteran Mitglied
|
Paramedic Geschrieben am 07.06.2012 um 02:24 |
|
Guten Morgen Zusammen,
nach langen Überlegungen habe ich mir Überlegt das "Kennst Du schon?"-Panel meiner Seite zu Modfizieren alá Jappy ...
für mich ein bisschen problematisch da ich nun auch nicht so der Codefreak bin.
Also was genau möchte ich:
Den Nickname neben den Avatar (Oben) und direkt darunter neben dem Avatar die Stadt.
Nun weiß ich nicht ob sich das mit Tabellen Realisieren lässt.
Es sollen so 3 Mitglieder untereinander angezeigt werden, wer Jappy kennt weiß sicherlich was ich meine.
Soweit bekomme ich es mit einem User hin aber nicht so wie ich will:
So siehts aus mit 3 Mitglieder:
hier mal der Code den ich nutze bei 3 Mitglieder:
openside("Kennst du schon...?");
echo "<center>";
$zaehler = 0;
$result=dbquery("SELECT user_id, user_name, user_avatar, user_location FROM ".$db_prefix."users
WHERE user_avatar != '' ORDER BY RAND() LIMIT 3");
while($user = dbarray($result)) {
$zufalluser = "<a href='".BASEDIR."profile.php?lookup=".$user['user_id']."'><img src='".IMAGES."avatars/".$user['user_avatar']."' alt=".$user['user_name']." width='45' height='45' border='0'> ".$user['user_name']."<br/></a><b>".$user['user_location']."";
if ($zaehler < 5){
echo $zufalluser;
$zaehler ++;
}else{
echo "\n $zufalluser";
$zaehler = 0;
}
}
echo"</center>";
closeside();
Vielleicht kann mir ja jemand nen paar Lösungstipps geben !! Würde mich freuen! |
|
|
|
Seiten Administrator
|
David Geschrieben am 07.06.2012 um 06:06 |
|
Versuchs mal so, ist allerdings ohne Garantie. GeSHi: PHP openside("Kennst du schon...?"); echo "<center>\n"; $result = dbquery("SELECT user_id, user_name, user_avatar, user_location FROM ".DB_USERS." WHERE user_avatar != '' AND user_status='0' ORDER BY RAND() LIMIT 3"); if (dbrows($result)) { while ($data = dbarray($result)) { echo "<a href='".BASEDIR."profile.php?lookup=".$data['user_id']."'>\n"; echo "<img src='".IMAGES."avatars/".$data['user_avatar']."' alt='".$data['user_name']."' style='width: 45px; height: 45px; float: left; border: 0px;' />\n"; echo $data['user_name']."<br />\n"; echo "</a>\n"; echo "<strong>".$data['user_location']."</strong>\n"; echo "<br style='clear: left; height: 8px;' />\n"; } } else { echo "<em>Es hat sich noch niemand registriert.</em>\n"; } echo "</center>\n"; closeside();
gewandelt in 0.027 Sekunden, benutzt wurde GeSHi 1.0.8.10
|
Liebe Grüße, euer David.
Aktiver PHP-Fusion Nutzer seit 3. September 2006
--------------------------------------------------------
PHP-Fusion Österreich Seitenbetreiber.
|
|
|
|
Veteran Mitglied
|
Paramedic Geschrieben am 07.06.2012 um 06:13 |
|
herzlichen Dank für die bemühungen so ist es aufjedenfall wie ich es haben will. :-)
um das ganze noch nen bisschen "Schicker" zu machen, ist mir die Idee noch gekommen das Alter + das Geschlecht vor dem Nickname anzeigen zu lassen. Sprich erst das geschlecht, dann das alter.
Dafür hab ich den Code nun erweitert:
Das Alter wird nicht richtig angzeigt sondern nur das "Jahr 2012" xD
und das Geschlecht will auch nicht :P
Vielleicht hab ich was verkehrt - falls jemand mal drüber sehen möchte. :)
openside("Kennst du schon...?");
echo "<center>\n";
$result = dbquery("SELECT user_id, user_name, user_avatar, user_location FROM ".DB_USERS." WHERE user_avatar != '' AND user_status='0' ORDER BY RAND() LIMIT 3");
//Alter
if($data['user_birthdate'] !== "0000-00-00"){
$birthday = explode("-", $data['user_birthdate']);
$age = (strftime("%Y") - $birthday[0]);
if(strftime("%m") < $birthday[1]){
$age--;
} elseif(strftime("%m") == $birthday[1]) {
if(strftime("%d") < $birthday[2]){
$age--;
}
}
}
//Alter END
//Geschlecht
if ( $data['user_gender'] == "1" ) {
$gender1 = "<img src='".INFUSIONS."online_users_panel/images/female.png' alt='Weiblich' title='Weiblich' width='10' height='10' align='absmiddle' style='vertical-align:middle; margin-left: 2px; border: none;' />";
} elseif ( $data['user_gender'] == "2" ) {
$gender1 = "<img src='".INFUSIONS."online_users_panel/images/male.png' alt='Männlich' title='Männlich' width='10' height='10' align='absmiddle' style='vertical-align:middle; margin-left: 2px; border: none;' />";
}
//Geschlecht END
if (dbrows($result)) {
while ($data = dbarray($result)) {
echo "» <a class='a3' href='".BASEDIR."profile.php?lookup=".$data['user_id']."'>\n";
echo " ".$gender1." ".$age." ";
echo "<img src='".IMAGES."avatars/".$data['user_avatar']."' alt='".$data['user_name']."' style='width: 45px; height: 45px; float: left; border: 0px;' />\n";
echo $data['user_name']."<br />\n";
echo "</a> \n";
echo "<span style='font-size:10px;'>aus ".$data['user_location']."</span>\n";
echo "<br style='clear: left; height: 8px;' /><hr>\n";
}
} else {
echo "<em>Es hat sich noch niemand registriert.</em>\n";
}
echo "</center>\n";
closeside(); |
Bearbeitet von Paramedic am 07.06.2012 um 06:28
|
|
|
|
Seiten Administrator
|
David Geschrieben am 07.06.2012 um 08:02 |
|
Probiere es mal so:
GeSHi: PHP openside("Kennst du schon...?"); echo "<center>\n"; $result = dbquery("SELECT user_id, user_name, user_avatar, user_location, user_birthdate, user_gender FROM ".DB_USERS." WHERE user_avatar != '' AND user_status='0' ORDER BY RAND() LIMIT 3"); if (dbrows($result)) { while ($data = dbarray($result)) { // Alter if($data['user_birthdate'] != "0000-00-00") { $birthday = explode("-", $data['user_birthdate']); $age--; } elseif(strftime("%m") == $birthday[1]) { $age--; } } } // Geschlecht if ($data['user_gender'] == "1") { $gender1 = "<img src='".INFUSIONS."online_users_panel/images/female.png' alt='Weiblich' title='Weiblich' width='10' height='10' align='absmiddle' style='vertical-align:middle; margin-left: 2px; border: none;' />"; } elseif ( $data['user_gender'] == "2" ) { $gender1 = "<img src='".INFUSIONS."online_users_panel/images/male.png' alt='Männlich' title='Männlich' width='10' height='10' align='absmiddle' style='vertical-align:middle; margin-left: 2px; border: none;' />"; } // Ausgabe echo "» <a class='a3' href='".BASEDIR."profile.php?lookup=".$data['user_id']."'>\n"; echo " ".$gender1." ".$age." "; echo "<img src='".IMAGES."avatars/".$data['user_avatar']."' alt='".$data['user_name']."' style='width: 45px; height: 45px; float: left; border: 0px;' />\n"; echo $data['user_name']."<br />\n"; echo "</a> \n"; echo "<span style='font-size:10px;'>aus ".$data['user_location']."</span>\n"; echo "<br style='clear: left; height: 8px;' /><hr>\n"; } } else { echo "<em>Es hat sich noch niemand registriert.</em>\n"; } echo "</center>\n"; closeside();
gewandelt in 0.015 Sekunden, benutzt wurde GeSHi 1.0.8.10
|
Liebe Grüße, euer David.
Aktiver PHP-Fusion Nutzer seit 3. September 2006
--------------------------------------------------------
PHP-Fusion Österreich Seitenbetreiber.
|
|
|
|
Veteran Mitglied
|
Paramedic Geschrieben am 07.06.2012 um 13:03 |
|
David ? Du hast es drauf !!! Funktioniert Super !!!
eine Frage habe ich noch, wie muss ich es machen um das ganze in den Ordner infusions zu schieben sprich ne Datei daraus zu machen ?
Nen Panel hab ich noch nie selbst so geschrieben und wüsste auch gar nicht wie genau ich das mache |
|
|
|
Mitglied
|
Rick Geschrieben am 07.06.2012 um 18:37 |
|
Warum willst Du daraus eine Infusion machen und was soll das bezwecken?
Steht doch alles schon in dem Panel
Edit:
Einfach neues Panel im Adminbereich erstellen,(Links Rechts wo Du es hinhaben möchtest) Code einfügen, Speichern und Aktivieren. |
LG
Rick
Man muss nicht alles wissen, sondern nur wissen, wo es steht
|
|
|
|
Veteran Mitglied
|
Paramedic Geschrieben am 07.06.2012 um 18:46 |
|
Du verstehst mich Falsch Rick, ich möchte keine Infusion draus machen sondern eine Datei welche ich in den Ordner Infusions hochlade & dann im Panel Admin auswählen kann. Damit ich diesen Code eben auch als "Backup" habe.
Einfach nen neues Panel machen im Adminbereich etc. kenn ich nur falls irgendwas mit der DB ist hab ich dann keine möglichkeit, daher als Datei. |
|
|
|
Veteran Mitglied
|
Janilein Geschrieben am 07.06.2012 um 18:58 |
|
Einen Ordner erstellen und Umbenennen in z.b. xyz_panel und dort dann deine php-datei rein, die z.b. auch xyz_panel nennst, dann noch ne leere index.php rein und dann den Ordner in infusions rein und dann kannst du xyz_panel.php in deiner Paneladministration auswählen. |
|
|
|
|
|
Veteran Mitglied
|
Janilein Geschrieben am 08.06.2012 um 22:41 |
|
Erscheint doch eh nur zufällig oder? Da wirst du doch sicher mit leben können. |
|
|
|
Veteran Mitglied
|
Paramedic Geschrieben am 08.06.2012 um 22:43 |
|
Ja, es erscheint zufällig aber mein Name auch ziehmlich oft ich frag mich die ganze zeit ob man da nicht ne if-abfrage drum machen kann aber da es ja zufällig passiert glaube ich es weniger .. trotzdem würd ich es gern "abgeschaltet" haben, dass man sich selbst sieht.
Zusammengefügt am 09. Juni 2012 um 00:59:59:
Editieren geht leider nicht mehr, daher poste ich einfach so...
Eben ist mir nen gedanke gekommen ... viele "Freunde" von mir haben sich beschwert, da ich nur 12 Zeichen als Nickname erlaube, diese möchte ich auf 15 hochsetzen. Nun kommen wir an den Punkt wo ich nicht weiter weiß, gibt es ne möglichkeit bei längeren Nicknames statt den vollen die letzen als "..." irgendwie anzuzeigen ...
Beispiel:
User Registriert sich mit "Test-Account123" und wird dann quasi im "Kennst du schon Panel" so angezeigt:
Zitat » m 90
Test-Account123
aus Entenhausen
statt
Zitat » m 90 Test-Account123
aus Entenhausen
Wenn möglich wäre es cool wenns so angezeigt werden könnte
Zitat » m 90 Test-Acc...
aus Entenhausen
Der Grund der "Zeichenerhöhung" ist u.A. daher gewollt da man mit 15 Zeichen schon etwas mehr auswahl hat, sind zwar nur 3 Zeichen mehr aber die meißten meiner Freunde haben fast nur Nicks mit 15 Zeichen lol
Ich würde mich hierüber ebenfalls über eine Antwort oder gar über einen Schnipsel freuen :-) |
Bearbeitet von Paramedic am 09.06.2012 um 00:59
|
|
|
|
|
|
Veteran Mitglied
|
Paramedic Geschrieben am 09.06.2012 um 15:46 |
|
Wo mach ich da nen trimlink hin ? das ist der Code:
openside("Kennst du schon...?");
echo "<center>\n";
$result = dbquery("SELECT user_id, user_name, user_avatar, user_location, user_birthdate, user_gender FROM ".DB_USERS." WHERE user_avatar != '' AND user_status='0' ORDER BY RAND() LIMIT 3");
if (dbrows($result)) {
while ($data = dbarray($result)) {
// Alter
if($data['user_birthdate'] != "0000-00-00") {
$birthday = explode("-", $data['user_birthdate']);
$age = (strftime("%Y") - $birthday[0]);
if(strftime("%m") < $birthday[1]){
$age--;
} elseif(strftime("%m") == $birthday[1]) {
if(strftime("%d") < $birthday[2]){
$age--;
}
}
}
// Geschlecht
if ($data['user_gender'] == "1") {
$gender1 = "<img src='".INFUSIONS."online_users_panel/images/female.png' alt='Weiblich' title='Weiblich' width='10' height='10' align='absmiddle' style='vertical-align:middle; margin-left: 2px; border: none;' />";
} elseif ( $data['user_gender'] == "2" ) {
$gender1 = "<img src='".INFUSIONS."online_users_panel/images/male.png' alt='Männlich' title='Männlich' width='10' height='10' align='absmiddle' style='vertical-align:middle; margin-left: 2px; border: none;' />";
}
// Ausgabe
echo "» <a class='a3' href='".BASEDIR."profile.php?lookup=".$data['user_id']."'>\n";
echo " ".$gender1." ".$age." ";
echo "<img src='".IMAGES."avatars/".$data['user_avatar']."' alt='".$data['user_name']."' style='width: 45px; height: 45px; float: left; border: 0px;' />\n";
echo $data['user_name']."<br />\n";
echo "</a> \n";
echo "<span style='font-size:10px;'>aus ".$data['user_location']."</span>\n";
echo "<br style='clear: left; height: 8px;' /><hr>\n";
}
} else {
echo "<em>Es hat sich noch niemand registriert.</em>\n";
}
echo "</center>\n";
closeside();
|| EDIT ||
Habs nun gelöst ... danke
auch noch ne Antwort zu dem Problem dass man sich selbst aus dem Panel ausblendet ?
Zusammengefügt am 10. Juni 2012 um 00:08:46:
David, herzlichen Dank für deinen geilen Privaten Support ^^ so nun bin ich wunschlos glücklich ^^
Zusammengefügt am 10. Juni 2012 um 00:10:26:
LÖSUNG:
Ersetze:
$result = dbquery("SELECT user_id, user_name, user_avatar, user_location, user_birthdate, user_gender FROM ".DB_USERS." WHERE user_avatar != '' AND user_status='0' ORDER BY RAND() LIMIT 3");
mit
$result = dbquery("SELECT user_id, user_name, user_avatar, user_location, user_birthdate, user_gender FROM ".DB_USERS." WHERE user_avatar != '' AND user_status='0'".(iMEMBER ? " AND user_id != '".$userdata['user_id']."'" : "")." ORDER BY RAND() LIMIT 3"); |
Bearbeitet von Paramedic am 10.06.2012 um 00:10
|
|
|
|
Mitglied
|
spunk Geschrieben am 10.06.2012 um 00:35 |
|
In den Gemeinschaftspanel ist noch n Bug.
Hat ein User kein Alter angegeben wird das Alter vom User darüber übernommen.
Hat ein User zwar den Tag und den Monat, nicht aber das Jahr angegeben, ist er 2011 Jahre alt ;-) |
|
|
|
Veteran Mitglied
|
Paramedic Geschrieben am 10.06.2012 um 17:58 |
|
Hm noch gar nicht bemerkt ... aber cool das du die augen offen hast ^^ |
|
|
|
Mitglied
|
GeSHi: PHP function numAlter($sqlResult){ if ($sqlResult == "0000-00-00") { return "N/A"; } else { $arrayAlter = explode("-", $sqlResult); } if($arrayAlter[0] == "0000") { return "N/A"; } $alter = date("Y") - $arrayAlter[0]; if (mktime(0, 0, 0, date("m"), date("d"), date("Y")) < mktime(0, 0, 0, $arrayAlter[1], $arrayAlter[2], date("Y"))) { $alter--; } return $alter; } else { return "N/A"; } }
gewandelt in 0.013 Sekunden, benutzt wurde GeSHi 1.0.8.10
|
|
|
|
Veteran Mitglied
|
Paramedic Geschrieben am 10.06.2012 um 23:07 |
|
&'nd wo genau gehört diese Abfrage hin oder muss man die mit dem jetigen Alterscode ersetzen ? |
|
|
|
Mitglied
|
spunk Geschrieben am 13.06.2012 um 00:29 |
|
Das würde mich auch interessieren |
|
|
|
Seiten Administrator
|
David Geschrieben am 13.06.2012 um 02:13 |
|
Versucht es mal so:
GeSHi: PHP // Alterfunktion (Sunflow1991) function numAlter($sqlResult){ if ($sqlResult == "0000-00-00") { return ""; } else { $arrayAlter = explode("-", $sqlResult); } if ($arrayAlter[0] == "0000") { return "N/A"; } $alter = date("Y") - $arrayAlter[0]; if (mktime(0, 0, 0, date("m"), date("d"), date("Y")) < mktime(0, 0, 0, $arrayAlter[1], $arrayAlter[2], date("Y"))) { $alter--; } return $alter." Jahre"; } else { return ""; } } openside("Kennst du schon...?"); echo "<center>\n"; $result = dbquery("SELECT user_id, user_name, user_avatar, user_location, user_birthdate, user_gender FROM ".DB_USERS." WHERE user_avatar != '' AND user_status='0'".(iMEMBER ? " AND user_id != '".$userdata['user_id']."'" : "")." ORDER BY RAND() LIMIT 3"); if (dbrows($result)) { while ($data = dbarray($result)) { // Geschlecht if ($data['user_gender'] == "1") { $gender1 = "<img src='".INFUSIONS."online_users_panel/images/female.png' alt='Weiblich' title='Weiblich' width='10' height='10' align='absmiddle' style='vertical-align:middle; margin-left: 2px; border: none;' />"; } elseif ( $data['user_gender'] == "2" ) { $gender1 = "<img src='".INFUSIONS."online_users_panel/images/male.png' alt='Männlich' title='Männlich' width='10' height='10' align='absmiddle' style='vertical-align:middle; margin-left: 2px; border: none;' />"; } // Ausgabe echo "» <a class='a3' href='".BASEDIR."profile.php?lookup=".$data['user_id']."'>\n"; echo " ".$gender1." ".numAlter($data['user_birthdate']); echo "<img src='".IMAGES."avatars/".$data['user_avatar']."' alt='".$data['user_name']."' style='width: 45px; height: 45px; float: left; border: 0px;' />\n"; echo $data['user_name']."<br />\n"; echo "</a> \n"; if ($data['user_location']) { echo "<span style='font-size:10px;'>aus ".$data['user_location']."</span>\n"; echo "<br style='clear: left; height: 8px;' /><hr>\n"; } } else { echo "<em>Es hat sich noch niemand registriert.</em>\n"; } echo "</center>\n"; closeside();
gewandelt in 0.016 Sekunden, benutzt wurde GeSHi 1.0.8.10
|
Liebe Grüße, euer David.
Aktiver PHP-Fusion Nutzer seit 3. September 2006
--------------------------------------------------------
PHP-Fusion Österreich Seitenbetreiber.
|
|
|
|
Veteran Mitglied
|
Paramedic Geschrieben am 13.06.2012 um 08:53 |
|
Also bei mir funktioniert es schonmal nicht, das Ergebnis ist ein einziges Panel auf dem ganzen Bildschirm.
Ist dieser Code Versionsabhängig ?
P.s. Bildschirmbild:
|
|
|