phpRS 2.8.x : phpRS Fórum
Toto fórum je určené výhradně k diskuzi o verzích phpRS v2.8.x.
phpRS - redakční a informační systém
Kontrolní Otázka
Zaslán uživatelem/kou: JeaDee (IP adresa zaznamenána)
Datum: 2006-08-22, 08:20

Preji krasny den, obracim se na vas z dotazem. Vytvoril jsem si kod pro generovani nahodnych kontrolnych otazek, jako nahradu za CAPTCHA a setkal jsem se s problemem, ze dochazi k to ze jsou me odpovedi spatne vyhodnocovany, pokud odpovim spatne je tato odpoved a spatne vyhodnocena, pokud vsak odpovim spravne je odpoved obcas vyhodnocena jako spatna a obcas jako spravana, bohuzel jsem v to nenalezl zadny system. Zkousel jsem i zodrazit pomoci echo najednou jak otazky tak odpovedi a zda byly tyto dvojice vzdy spravne. Prikladam i kod:

Gegerovani otazky a odpovedi z extexniho souboru:
<?php
session_start();
$otazka = array("Je jedna a jedna rovno dvěma či osmi?(odpověd opište přesně jak je uvedena v textu)",
"Je tři plus tři rovno dvanácti či šesti?(odpověd opište přesně jak je uvedena v textu)",
"Je deset plus deset rovno dvaceti či dvaadvaceti?(odpověd opište přesně jak je uvedena v textu)");
$odpoved = array("dvěma",
                 "šesti",
                 "dvaceti");
$max=count($otazka);
$tip=rand()%($max);
$_SESSION["question"]=$otazka[$tip];
$_SESSION["answer"] = $odpoved[$tip];
?>


do souboru comment.php:
session_start()
...
include_once("kontrolni_otazka.php");
...
function NovyFormKom()
{
...
<p class=\"stred\"><strong>".RS_KO_OTAZKA.":</strong>&nbsp;".$_SESSION["question"]."</p>
<p class=\"stred\"><strong>".RS_KO_ODPOVED.":</strong>&nbsp;<input type=\"text\" name=\"odpovedpris\" size=\"12\" class=\"textpole\" /></p>
...
}
function NovyPridejKom()
{
...
$GLOBALS["kodmail"]=phprs_sql_escape_string($GLOBALS["kodmail"]);
//podminka pro porovnani odpovedi z kodu a odpovedi od prispevovatele
  if ($odpovedzevnitr==$odpovedzvenku):
  $ip_adresa=$_SERVER["REMOTE_ADDR"]; // ip adresa ctenare
  $aktdatum=Date("Y-m-d H:i:s");
  ...
  endif;


predem dekuji za kazde mozne reseni a jsem si vedom ze to neni idealni reseni a tedy prosim o odpoved na moznouchybu v kodu, nikoli polemizovani o vhodnosti a nevhodnosti. Jeste jednou predem dekuji



Celkem upraveno 1×. Poslední úprava JeaDee v 22.08.2006 09:04.

Re: Kontrolní Otázka
Zaslán uživatelem/kou: pa3k (IP adresa zaznamenána)
Datum: 2006-08-22, 10:03

IMHO tú session treba štartovať na inom mieste, len pred zobrazením formulára. To ale nepôjde pretože comment.php už začal generovať vzhľad niekde okolo riadkov 500-520, pred tou case podmienkou. Bude treba asi takto:
if ($akce=="new") {
    include("controlq.php");
} else {
    session_start();
}

// Tvorba stranky
$vzhledwebu->Generuj();
ObrTabulka();  // Vlozeni layout prvku

Re: Kontrolní Otázka
Zaslán uživatelem/kou: Michalek (IP adresa zaznamenána)
Datum: 2006-08-22, 12:23

session bych startoval uz v config.php

$tip=rand()%($max); to mi prijde slozite, proc to neudelat rand(0,$max) ?

$odpovedzevnitr==$odpovedzvenku - nevidím nikde plnění těchle proměnných, což bych asi měl, pokud bych měl poradit :-)

// Jééé, omlouvám se: "predem dekuji za kazde mozne reseni a jsem si vedom ze to neni idealni reseni a tedy prosim o odpoved na moznouchybu v kodu, nikoli polemizovani o vhodnosti a nevhodnosti. Jeste jednou predem dekuji"; tu mojí připomínku s rand() ignoruj :-)

--
[ SAFUS.EU | OFFLINE | FOREVER ]



Celkem upraveno 1×. Poslední úprava Michalek v 22.08.2006 12:24.

Re: Kontrolní Otázka
Zaslán uživatelem/kou: pertinax (IP adresa zaznamenána)
Datum: 2009-08-25, 18:12

ahojte,

potreboval by som poradit ako nezverejnit obsah javascriptu,

na nete som nasiel podobny pripad, kde sa samotny javascript vlozi do suboru script.php

www.developertutorials.com/tutorials/php/hide-your-javascript-with-php-050419/page1.html

riesil niekto nieco podobne ?? problem mam najmae s tymto:

to sa ma umiestnit na stranku kde je javascript:

<?
session_start();

if (!isset($_SESSION['access'])){
$_SESSION['access'] = true;
$access = true;
}
?>

neviem kam to umiestnit, skusal som to dat napr. do trlayout a aj do inych suborov, ale bud je javascript nefunkcny alebo mi vypise chybu napr. ze sesion_start je uz spustena, a ona je naozaj spustena v subore session.inc.php

riesil niekto nieco podobne alebo vie poradit??

tu na webe je len velmi malo o tomto



[http://www.zeleznicne.info]



Celkem upraveno 5×. Poslední úprava pertinax v 26.08.2009 12:11.

Re: Kontrolní Otázka
Zaslán uživatelem/kou: pa3k (IP adresa zaznamenána)
Datum: 2009-08-29, 00:34

S pôvodnou témou to moc nesúvisí ale akékoľvek skrývanie JavaScriptového kódu je pre zasveteného neúčinné a jedinou možnoťou je to len sťažiť. Hľadaj javscript obfuscator.

Re: Kontrolní Otázka
Zaslán uživatelem/kou: pertinax (IP adresa zaznamenána)
Datum: 2009-08-30, 14:03

ahojte,

Ja viem, že to nesúviselo s témou, ale bola tu reč o session_start tak som to skúsil dať sem.

Ďakujem za radu, o tom obfuscatore som uvažoval aj ja a nakoniec som ho aj použil.

Išlo mi o nezverejnenie javascriptu špeciálne určeného pre výpočet kontrolnej číslice na rušňoch, nakoniec výsledok je na webe www.zeleznicne.info. Ako vždy sú s tým nejaké malé problémy, v IE 7 to hlási chybu expected, ale inak to ide. Ak bude čas budem uvažovať aj nad tou session_start.

[http://www.zeleznicne.info]



Lituji, ale pouze registrovaní uživatelé mohou zasílat příspěvky do této sekce.
This forum powered by Phorum and designed by STaNBoSS.