Ankety k článkům v phpRS
 x   TIP: Přetáhni ikonu na hlavní panel pro připnutí webu
Reklama
Reklama

Ankety k článkům v phpRSAnkety k článkům v phpRS

 

Ankety k článkům v phpRS

Google       Google       2. 11. 2005       9 694×

Požíváte redakční systém phpRS? Tak pro vás mám jednoduchou, ale velice efektní úpravu systému, spočívající v možnosti vkládání anket přímo do článků.

Reklama
Reklama

Každý, kdo používá phpRS určitě ví, že se dají do článků pomocí tzv. phpRS značek vkládat obrázky uložené v galerii. Díky tomu nám nic nebrání ukázat si jak pomocí těchto značek vkládat ankety přímo do vašich článků. Předpokladem je, že používáte phpRS nejvyšší verze.

Postup:

Nejprve si upravíme administrační soubor anket, tedy aankety.php.

Řádek 159:


".RS_AKT_SA_TITULEK."\n";
?>

nahradíme tímto:


".RS_AKT_SA_ID."\n";
  echo "".RS_AKT_SA_TITULEK."\n";
?>

Dále řádek 168:

".$pole_data["titulek"]."\n";
?>

nahradíme tímto:

".$pole_data["ida"]."\n";
    echo "".$pole_data["titulek"]."\n";
?>

Pak musíme uprvit jazykový soubor admin_sl_ankety_cz.php, do kterého pouze přidáme tento řádek:


Tímto jsme docílili, že se nám při výpisu anket zobrazí i ID každé ankety. Poté následuje soubor trclanek.php, zde si najdeme řádek 233 a do funkce Dekoduj():


přidáme tyto řádky:


  function Dekoduj($text = "")
 {
// anketa
 if ($text!=""):
  $pozice=strpos("x".$text,"<anketa");
  if ($pozice>0): // exsituje min. 1 znacky
    $pozice--; // prevod na realnou pozici
    $rotuj=1; // inic. rotace
    while ($rotuj):
      $retezec=substr($text,$pozice,60); // vykopirovani
      $konec=strpos($retezec,">"); // konec znacky
      $konec++; // pricitam 1 kvuli pocitani pozice od 0
      $znacka=substr($retezec,0,$konec); // znacka
      // zpracovani znacky
      $atributy=str_replace("<anketa ","",$znacka); // co,cim,kde
      $atributy=str_replace(">","",$atributy);
      $atributy=str_replace('"',"",$atributy);
      $atributy=trim($atributy);
      // sestaveni pole s atributy
      $pole_atr=explode(" ",$atributy);
      $pocet_atr=count($pole_atr);
      // zpracovani pole atributu
      $zjistanketa=0;
      $zaobrazku='center'; // prednastaveni atributu zarovnani
      for ($pom=0;$pom<$pocet_atr;$pom++):
        $jmeno="";
        list($jmeno,$hodnota)=explode("=",$pole_atr[$pom]);
        switch($jmeno):
          case 'id': $zjistanketa=mysql_escape_string($hodnota); break;
          case 'zarovnani':
             switch($hodnota):
                case 'nastred': $zaobrazku='center'; break;
                case 'vlevo': $zaobrazku='left'; break;
                case 'vpravo': $zaobrazku='right'; break;
             endswitch;
             break;
        endswitch;
      endfor;
      // dotaz na obrazek
  $dotazotazka=mysql_query("select otazka from ".$GLOBALS["rspredpona"]."ankety where ida='".$zjistanketa."'",$GLOBALS["dbspojeni"]);
  $error=0;
  @$ankotazka=mysql_result($dotazotazka,0,"otazka"); // anketni otazka
  if ($ankotazka):
  $dotazcelkem=mysql_query("select sum(pocitadlo) as celkem from ".$GLOBALS["rspredpona"]."odpovedi where anketa='".$zjistanketa."'",$GLOBALS["dbspojeni"]);
  $celkemhlasu=mysql_result($dotazcelkem,0,"celkem"); // celkem hlasu
  if ($celkemhlasu==0): $jednoproc=0; else: $jednoproc=100/$celkemhlasu; endif; // zjisteni poctu dilku na jeden hlas

  // nacteni prehledu moznych odpovedi
  $dotazodp=mysql_query("select ido,odpoved,pocitadlo from ".$GLOBALS["rspredpona"]."odpovedi where anketa='".$zjistanketa."' order by ido",$GLOBALS["dbspojeni"]);
  $pocetodp=mysql_num_rows($dotazodp);

  $barva_prouzku=1; // barva procentualniho prouzku u odpovedi

  $txt_anketa="
".$ankotazka."

\n"; $txt_anketa.="\n"; while($akt_pole_data = mysql_fetch_assoc($dotazodp)): $velikost=ceil($jednoproc*$akt_pole_data["pocitadlo"]); $txt_anketa.="<a href=\"ankety.php?akce=hlasuj&hlas=".$akt_pole_data["ido"]."&cil=".$GLOBALS['rsconfig']['anketa_cil_str']."&anketa=".$zjistanketa."\">".$akt_pole_data["odpoved"]."
\n"; $txt_anketa.="<img src=\"pictures.php?rvel=".$velikost."&barva=".$barva_prouzku."\" height=\"8\" width=\"".$velikost."\" alt=\"".$akt_pole_data["pocitadlo"]."\" /> (".$akt_pole_data["pocitadlo"]." ".RS_SP_POCET_HLA.")
\n"; $barva_prouzku++; endwhile; $txt_anketa.="
\n"; $txt_anketa.="

".RS_SP_CELKEM_HLA.": ".$celkemhlasu."

\n"; else: $error=1; endif; if ($error==0): $text=str_replace($znacka,$txt_anketa,$text); else: $text=str_replace($znacka,"",$text); $error=0; endif; // test na existenci dalsi znacky $pozice=strpos($text,"<anketa"); if ($pozice==0): $rotuj=0; endif; // konec kompilace znacek endwhile; endif; endif; // anketa konec

A nyní stačí do zvoleného článku vložit tuto phpRS značku, kde atribut zarovnání má stejné hodnoty jako značka pro vkládání obrázku, tedy vlevo, nastred, vpravo.


<anketa id="CISLO" zarovnani="ZPUSOB_ZAROVNANI">

Doufám, že Vám tato malá úprava pomůže. Příjemné hlasování.

×Odeslání článku na tvůj Kindle

Zadej svůj Kindle e-mail a my ti pošleme článek na tvůj Kindle.
Musíš mít povolený příjem obsahu do svého Kindle z naší e-mailové adresy kindle@programujte.com.

E-mailová adresa (např. novak@kindle.com):

TIP: Pokud chceš dostávat naše články každé ráno do svého Kindle, koukni do sekce Články do Kindle.

3 názory  —  3 nové  
Hlasování bylo ukončeno    
0 hlasů
Google
(fotka) Tomáš VinduškaEx-programátor a admin, programuje v PHP a MySQL.
Web    

Nové články

Obrázek ke článku Delphi 10.1.2 (Berlin Update 2) – na co se můžeme těšit

Delphi 10.1.2 (Berlin Update 2) – na co se můžeme těšit

Touto roční dobou, kdy je zem pokrytá barevným listím a prsty křehnou v mrazivých ránech, se obvykle těšíme na zbrusu novou verzi RAD Studia. Letos si však ale budeme muset počkat na Godzillu a Linux až do jara. Vezměme tedy za vděk alespoň updatem 2 a jelikož dle vyjádření pánů z Embarcadero se budou nové věci objevovat průběžně, pojďme se na to tedy podívat.

Reklama
Reklama
Obrázek ke článku Konference: Moderní datová centra pro byznys dneška se koná už 24. 11.

Konference: Moderní datová centra pro byznys dneška se koná už 24. 11.

Stále rostoucí zájem o cloudové služby i maximální důraz na pružnost, spolehlivost a bezpečnost IT vedou k výrazným inovacím v datových centrech. V infrastruktuře datových center hraje stále významnější roli software a stále častěji se lze setkat s hybridními přístupy k jejich budování i provozu.

Obrázek ke článku Konference: Mobilní technologie mají velký potenciál pro byznys

Konference: Mobilní technologie mají velký potenciál pro byznys

Firmy by se podle analytiků společnosti Gartner měly  rychle přizpůsobit skutečnosti, že mobilní technologie už zdaleka nejsou horkou novinkou, ale standardní součástí byznysu. I přesto - nebo možná právě proto - tu nabízejí velký potenciál. Kde tedy jsou ty největší příležitosti? I tomu se bude věnovat již čtvrtý ročník úspěšné konference Mobilní řešení pro business.

Obrázek ke článku Hackerský kongres přiveze v září do Prahy špičky světové kryptoanarchie

Hackerský kongres přiveze v září do Prahy špičky světové kryptoanarchie

Hackerský kongres HCPP16 pořádá od 30. září do 2. října nezisková organizace Paralelní Polis již potřetí, a to ve stejnojmenném bitcoinovém prostoru v pražských Holešovicích. Letos přiveze na třídenní konferenci přes 40 většinou zahraničních speakerů – lídrů z oblastí technologií, decentralizované ekonomiky, politických umění a aktivismu. Náměty jejich přednášek budou také hacking, kryptoměny, věda, svoboda nebo kryptoanarchie.

loadingtransparent (function() { var po = document.createElement('script'); po.type = 'text/javascript'; po.async = true; po.src = 'https://apis.google.com/js/plusone.js'; var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(po, s); })();
Hostujeme u Českého hostingu       ISSN 1801-1586       ⇡ Nahoru Webtea.cz logo © 20032016 Programujte.com
Zasadilo a pěstuje Webtea.cz, šéfredaktor Lukáš Churý