Najnovšie módy
Najnovšie vzhľady
Anketa
Pri výbere hostingu...







Musíte byť prihlásený, aby ste mohli hlasovať.
Panel kontakt v jQuery a PHP.
V prvom rade demo čo budeme vyrábať :-).
LIVE: http://developer....

IMAGES:
developer.4fan.cz/images/articles/art2/2.png
developer.4fan.cz/images/articles/art2/1.png

Na začiatok by som rád povedal, že nemôžem a nebudem vysvetľovať presný popis jednotlivých funkcií(jednak časová náročnosť, rovno by som spravil knihu :D). Všetci čo poznajú PHP a jQuery budú vedieť ako to funguje :-), vy zvyšní si budete musieť buď jednotlivé kódy doštudovať :P.

Tak poďme na to =).
Vytvoríme si panel, do ktorého vložíme najdôležitejšie osoby stránky :-).

Vytvoríme si súbor "admin_info_panel.php" a vložíme ho do "infusions/admin_info_panel/admin_info_panel.php".

Otvoríme admin_info_panel.php a vložíme doň.

GeSHi: PHP
  1. <?php
  2. if (!defined("IN_FUSION")) { die("Access Denied"); }
  3. function online_user_infoadmin($time) {
  4. $time_now = time();
  5. if ($time > $time_now - 60) {
  6. return "<span style='color: green;'>Online</span>";
  7. } elseif ($time > $time_now - 300) {
  8. return "<span style='color: white;'>5 minút</span>";
  9. } else {
  10. return "<span style='color: red;'>Offline</span>";
  11. }
  12. }
  13.  
  14. function add_user_infoadmin($id) {
  15. $id = (isnum($id))? trim($id) : 1;
  16. $sql = dbquery("SELECT * FROM ".DB_USERS." WHERE user_id = '".mysql_real_escape_string($id)."'");
  17. $userdata = dbarray($sql);
  18. $avatar = (!empty($userdata['user_avatar']))? $userdata['user_avatar'] : "noavatar50.png";
  19. $stav = online_user_infoadmin($userdata['user_lastvisit']);
  20.  
  21. echo "<a href='#' title='".$userdata['user_name']."' class='user_contact2'> \n"; //ODKAZ
  22. echo "<img src='".IMAGES."avatars/".$avatar."' width='18px' height='18px' alt='".$userdata['user_name']." avatar' /> \n"; //avatar
  23. echo $userdata['user_name']; //Meno
  24. echo "<br />\n</a> \n"; //ukoncenie odkazu
  25. echo "<span class='admin_user_online'>"; //online stav
  26. echo $stav."\n";
  27. echo "</span>"; //koniec stavu
  28.  
  29. echo "<div class='admin_user1_info'> \n"; //INFO TABLE
  30.  
  31. echo "<a href='".BASEDIR."profile.php?lookup=".$id."' title='View profile'>View profile</a>";//view profile
  32. echo "<br />\n";
  33. echo "<a href='".BASEDIR."messages.php?msg_send=".$id."' title='PM'>Súkromná správa</a>"; //PM
  34. echo "<br />\n";
  35. echo "<a href='mailto:".$userdata['user_email']."' title='Mail'>".$userdata['user_email']."</a>"; //Email
  36. echo "<br />\n";
  37. echo "<br />\n";
  38. echo "Oblúbené jedlo: ".$userdata['user_oblubenejedlo']; //Email
  39. echo "<br />\n";
  40. echo "Body: ".$userdata['user_points']."bodov";
  41. echo "<br />\n";
  42.  
  43. echo "</div>"; //KONIEC INFO TABLE
  44. }
  45. //PANEL
  46. openside("Kontakt");
  47. echo "<div class='user_contact1'>";
  48.  
  49. echo add_user_infoadmin(1);
  50. echo add_user_infoadmin(2);
  51. echo add_user_infoadmin(3);
  52. echo add_user_infoadmin("4");
  53.  
  54. echo "</div>";
  55.  
  56. add_to_head('
  57. <style type="text/css">
  58. .admin_user1_info {
  59. padding: 5px 0 10px 12px;
  60. }
  61. .admin_user_online {
  62. padding: 10px;
  63. background-color: black;
  64. display: none;
  65. }
  66. .user_contact2:hover {
  67. text-decoration: none;
  68. }
  69. </style>
  70.  
  71. <script type="text/javascript">
  72. $(document).ready(function(){
  73. $(".admin_user1_info").hide(); //skryje INFO o adminoch
  74. $(".admin_user_online").hide(); //skryje online stav
  75. $(".user_contact2").removeAttr("title"); //skryje title
  76.  
  77. $(".user_contact1").delegate(".user_contact2", "click mouseenter mouseleave", function(e) {
  78. if ( e.type === "click" ) {
  79. var user_info = $(this).next().next();
  80.  
  81. if (user_info.is(":visible")) {
  82. $(".admin_user1_info").hide();
  83. } else {
  84. $(".admin_user1_info").hide();
  85. user_info.show();
  86. }
  87. return false;
  88. } else if ( e.type === "mouseenter" ) {
  89.  
  90. $(".admin_user_online").hide();
  91. var x = $(this).offset().left;
  92. var y = $(this).offset().top;
  93. var cssObj = {
  94. "position" : "absolute",
  95. "opacity" : "0.5",
  96. "left" : x + 70,
  97. "top" : y - 10
  98. }
  99. $(this).next().show().css(cssObj);
  100.  
  101. } else if ( e.type === "mouseleave" ) {
  102. $(this).next().hide();
  103. }
  104. });
  105. });
  106. </script>
  107. ');
  108.  
  109. closeside();
  110. ?>
  111.  
Vygenerované za 0.069 sekúnd, používate GeSHi 1.0.7.20


[size=16]Názov panelu:[/size]

Ak si chceme opraviť názov panelu. Nájdeme si riadok(46):
Code
openside("Kontakt");



A Kontakt nahradíme naším tajným slovom napr. muheheha.
Code
openside("muheheha");




[size=16]Pridať užívateľa do panelu:[/size]

Medzi riadkami 47 až 54 je vypisovanie užívateľov akých na stránke chceme :-).
Vyzerá to približne takto:
Code
echo add_user_infoadmin(1);



Ak pridáme nový riadok s textom:
Code
echo add_user_infoadmin(1);



Tak pridáme nového uživateľa.

Číslo medzi zátvorkami (echo add_user_infoadmin(1);) je jeho ID.
ID si môžme pozrieť pri prezeraní profilu. Nachádza sa v odkaze:
profile.php?lookup=1

[size=16]Vlastné zobrazovacie políčka:[/size]
Ten kto vie pozrieť ich názov v phpmyadmin, tak nemá problém :-). Na konci stránky nechám názvy zakladných políčok.

Medzi riadkami 31 až 41 sú údaje, ktoré sa zobrazia po rozkliknutí mena,

Code
  echo "<a href='".BASEDIR."profile.php?lookup=".$id."' title='View profile'>View profile</a>";//view profile
   echo "<br />\n";
   echo "<a href='".BASEDIR."messages.php?msg_send=".$id."' title='PM'>Súkromná správa</a>"; //PM
   echo "<br />\n";
   echo "<a href='mailto:".$userdata['user_email']."' title='Mail'>".$userdata['user_email']."</a>"; //Email
   echo "<br />\n";
   echo "<br />\n";
   echo "Obľúbené jedlo: ".$userdata['user_oblubenejedlo']; //Email
   echo "<br />\n";
   echo "Body: ".$userdata['user_points']."bodov";
   echo "<br />\n";




Ak chcem pridať nové políčko s novou hodnotou spravím to následovne:
Code
   echo "TEXT: ".$userdata['POLICKO S MYSQL'];
   echo "<br />\n";



A jednoducho to pridám ku kódu.

Takže:
Code
  echo "<a href='".BASEDIR."profile.php?lookup=".$id."' title='View profile'>View profile</a>";//view profile
   echo "<br />\n";
   echo "<a href='".BASEDIR."messages.php?msg_send=".$id."' title='PM'>Súkromná správa</a>"; //PM
   echo "<br />\n";
   echo "<a href='mailto:".$userdata['user_email']."' title='Mail'>".$userdata['user_email']."</a>"; //Email
   echo "<br />\n";
   echo "<br />\n";
   echo "Obľúbené jedlo: ".$userdata['user_oblubenejedlo']; //Email
   echo "<br />\n";
   echo "Body: ".$userdata['user_points']."bodov";
   echo "<br />\n";
   echo "TEXT: ".$userdata['POLICKO S MYSQL'];
   echo "<br />\n"; 




To je myslím všetko :-). Stačí súbor uložiť, nahrať na stránku. A teda samozrejme vojsť do adminstrácie-panely-pridať panel-povoliť panel :-).

Súbory na stiahnutie: http://developer....l_user.rar
PHP-FUSION: 7.02.03

Code
Základné políčka MYSQL:

user_id    
user_name    
user_algo    
user_salt    
user_password    
user_admin_algo    
user_admin_salt
user_admin_password    
user_email    
user_hide_email
user_offset    
user_avatar
user_posts    
user_threads    
user_joined    
user_lastvisit    
user_ip    
user_ip_type    
user_rights    
user_groups    
user_level    
user_status    
user_actiontime    
user_theme    
user_location    
user_birthdate    
user_skype    
user_aim    
user_icq    
user_msn    
user_yahoo    
user_web    
user_sig





By Bokos for PHP FUSION :-).
Komentáre
#1 | 800 dňa 05.09.2011 20:21:11
EDITED. Aby otvorené okno šlo zatvoriť...
PS: Viem že kód není dokonalý, snažil som sa o jednoduchosť. No našiel som veci na update :-///.
#2 | 4026 dňa 06.09.2011 20:22:09
Počuj potreboval by som ten ajax, skade si ho stiahol ?
#3 | 800 dňa 08.09.2011 07:35:29
Som to robil ja, veď mi napíš skype :-).
(A nieje to AJAX, ale není problém ho tam integrovať :-))
#4 | 4611 dňa 17.04.2012 11:40:37
aj tu ti mozno poradia http://php-fusion.sk
Pridať komentár
Pre pridanie komentára musíte byť prihlásený.
Hodnotenia
Musíte byť zaregistrovaný, aby ste mohli hodnotiť.

Prosím prihláste, alebo sa zaregistrujte.

Zatial nikto neohodnotil tento príspevok.