Autor | Zpráva | ||
---|---|---|---|
Bita Profil * |
#1 · Zasláno: 20. 8. 2014, 20:05:49
Zdravím všechny, prosím Vás o pomoc s url.
Mám odkaz : <a href="?dotaz=true">Zeptat se </a> Samozřejmě když na něj kliknu tak mám url například : localhost/modules/no_parametr/index.php?dotaz=true A chci jen to, že když na ten odkaz kliknu tak se zobrazí jen localhost/modules/no_parametr/index.php , ale parametr se samozřejmě předá, řeším to už jakou dobu i jsem se díval zde na diskuzi, ale jaksi mi nic nepomohlo :-(. Předem díky všem za odezvu. |
||
Seki Profil |
Nevím, co tě k tomu vede, ale napadá mě několik řešení:
> Použít javascript k úpravě URL po zpracování akce > Použít koláčky nebo session, pro předání hodnoty > Nebo můžeš odkaz nahradit formálářem a buttonu přiřadit styly, aby vypadal jako běžný odkaz |
||
Bita Profil * |
#3 · Zasláno: 20. 8. 2014, 20:18:39
Seki:
1)Javascript jsem už zkoušel a funguje, jen je problém v tom že jde tak na pul sekundy ještě vidět url s tím parametrem takže by to někdo mohl vklidu přečíst :-( 2)session a cookie nevím jak dát do parametru v odkazu :-/ 3) a formulář mi nepomůže protože ten odkaz je v cyklu a u každeho příspěvku má get parametr jinou hodnotu a to mi funguje jen u get odkazu a proč to chci udělat ? Mám třeba delete=username & vzkaz=user_vzkaz a když to někdo uvidí tak vklidu může dopsat za parametr jineho uživatele a jeho zprávu a smaže ji ... |
||
Taps Profil |
#4 · Zasláno: 20. 8. 2014, 20:21:55
Bita:
Tak udělej takové opatření, aby si pouze přihlášený uživatel mohl mazat své vlastní zprávy. Ke smazání jiných zpráv nebude mít oprávnění. |
||
Bita Profil * |
#5 · Zasláno: 20. 8. 2014, 20:24:21
Taps:
to mám stylem, že jen u toho kdo ty příspěvky inzeroval tak má nabídku odstranit ... ale vlastně já bych mohl pak ještě ten parametr zkontrolovat...díky za typ jdu to vyzkoušet :-) |
||
Taps Profil |
#6 · Zasláno: 20. 8. 2014, 20:31:37
Bita:
kontrolulj aktuálně přihlašeného uživatele a vlastníka inzerátu...v případě shody bude možné inzerát smazat. |
||
Bita Profil * |
#7 · Zasláno: 20. 8. 2014, 20:41:51 · Upravil/a: Bita
Taps:
ale pokud jsem do té adresy dopsal ty parametry ručně tak to nefunguje :-/ a normalně by kdokoliv mohl smazat cizí příspěvek.... Taps: to jsem udělal ale prostě mi to ignoruje podmínku pokud to napíšu ručně do adressbaru |
||
Taps Profil |
#8 · Zasláno: 20. 8. 2014, 20:44:31
Bita:
jak vypadá tvůj skript ? |
||
Bita Profil * |
#9 · Zasláno: 20. 8. 2014, 20:46:49
Takhle mám podmínku, get odstranit je vlastně prezdivka majitele toho příspěvku
if($_GET['odstranit']!=$_SESSION['prezdivka']){ echo "FALSE"; }else{ echo"TRUE"; } |
||
Taps Profil |
#10 · Zasláno: 20. 8. 2014, 20:49:20
Bita:
níže uvedené příkazy vypíší shodné údaje ? <? echo $_GET['odstranit']; echo $_SESSION['prezdivka']; ?> |
||
Bita Profil * |
#11 · Zasláno: 20. 8. 2014, 20:50:07
Taps:
ano přesně tak |
||
Taps Profil |
#12 · Zasláno: 20. 8. 2014, 20:52:07
Bita:
tím pádem nevidím žádný problém. |
||
Bita Profil * |
#13 · Zasláno: 20. 8. 2014, 20:52:52
no právě já taky ne a i přesto to nefunguje :-/
|
||
Taps Profil |
#14 · Zasláno: 20. 8. 2014, 20:54:27
Bita:
nebude chyba tedy v jiné části kodu ? |
||
Bita Profil * |
#15 · Zasláno: 20. 8. 2014, 20:59:49
tam prostě musí být nějaký rozdíl nebo fakt nevím .... mám přezdívku kony , majitel inzerátu je kony a přesto to hodí FALSE...a když jsou přezdívka a majitel inzerátu rozdílní tak to taky hodí FALSE
|
||
Taps Profil |
Bita:
tak to zkus otočit <? if($_GET['odstranit'] == $_SESSION['prezdivka']){ echo "TRUE"; }else{ echo"FALSE"; } ?> |
||
Bita Profil * |
#17 · Zasláno: 20. 8. 2014, 21:25:31
Taps:
Nefunguje , no můžu to vyscreenovat a dát sem obrázky, pomohlo by to víc pro přehled ? |
||
Taps Profil |
#18 · Zasláno: 20. 8. 2014, 21:29:10
Bita:
nejraději bych se podíval na celý skript na FTP |
||
Bita Profil * |
#19 · Zasláno: 20. 8. 2014, 21:30:49
není zase tak extrémně dlouhý, můžu ho dát i sem ?
|
||
Taps Profil |
#20 · Zasláno: 20. 8. 2014, 21:31:11
dej ho i sem.
|
||
Bita Profil * |
#21 · Zasláno: 20. 8. 2014, 21:36:24
TOTO JE KÓD KTERÝ MI VYPISUJE PŘÍSPĚVKY I S ODKAZY: když je přihlášený uživatel vlastníkem příspěvku tak se mu u něj ukáže odstranit, pokud není vlastníkem tak se mu zobrazí odpovědět to funguje bez problému. Samotný problem je pod tímhle kódem.
if ($radku == 0) { echo "Prozatím nebyl vložen žádný příspěvek"; } else { while ($zaznam = MySQL_Fetch_Array($vypis)): $vlozil1 = $zaznam["vlozil"]; $duvod1 = $zaznam["duvod"]; $vek1 = $zaznam["vek"]; $zprava1 = $zaznam["zprava"]; echo "<div id='ram'><table><tr>"; echo "<td>" . $zaznam["datum"] . " | "; echo $zaznam["duvod"] . " | "; echo $zaznam["vlozil"] . " | "; echo $zaznam["vek"] . " let</td></tr>"; echo "<tr><td>" . $zaznam["zprava"] . "</td></tr>"; if ($vlozil1 != $_SESSION['prezdivka']) { echo "<tr><td><a href='?odpovedet=$vlozil1 & duvod=$duvod1 & vek=$vek1 & zprava=$zprava1'>Odpovědět</a></td></tr>"; } else { echo "<tr><td><a href='?odstranit=$vlozil1 & zprava=$zprava1'>Odstranit</a></td></tr>"; } echo "</table></div>"; endwhile; } Zde nastane problém při porovnávání session a get pod proměnnou GET['odstranit'] je vlastně uložená přezdívka majitele příspěvku i if (isset($_GET['odstranit']) && isset($_SESSION['prezdivka'])) { if ($_SESSION['prezdivka'] == $_GET['odstranit']) { echo"spravně"; } else { echo"Špatně"; |
||
Taps Profil |
#22 · Zasláno: 20. 8. 2014, 21:39:43
Bita:
máš tam na začátku souboru session_start() ? |
||
Bita Profil * |
#23 · Zasláno: 20. 8. 2014, 21:42:01
jojo :-) to tam je, i mě to zobrazí třeba přezdivka: kony majitel: kony ale i přesto to hodí FALSE
|
||
Taps Profil |
#24 · Zasláno: 20. 8. 2014, 21:45:12
Bita:
zkus ořezat mezery <? if (trim($_SESSION['prezdivka']) == trim($_GET['odstranit'])) { echo"spravně"; } else { echo"Špatně"; ?> |
||
Bita Profil * |
#25 · Zasláno: 20. 8. 2014, 21:47:49 · Upravil/a: Bita
Ježiš ja jsem idiot na entou .... DĚKUJU MOC, pomohlo !!
fakt díky moc, nemusím řešit už ani to URL protože takto je to daleko snažší.... takže jsi mě ušetřil dost práce :-) |
||
Taps Profil |
#26 · Zasláno: 20. 8. 2014, 21:54:03
Bita:
každopádně se zkus takových problémů do budoucna vyvarovat, úšetří ti to hodně práce. |
||
Časová prodleva: 10 let
|
0