Autor | Zpráva | ||
---|---|---|---|
Josef Přerovský Profil |
#1 · Zasláno: 13. 10. 2018, 23:21:07
Zdravím, mám takový problém.
Vždy když dám 1 možnost, jako třeba "Viditelná registrace" na neviditelný, tak se mi to uloží u obou jak u emailu, tak u registrace. Poradí někdo co s tím? :) <?php if(isset($_SESSION['user'])) { if($_GET['id']) { $id = $_GET['id']; if($_GET['id']==$user['id'] or $user['level'] == 3){ $profil = mysql_query("SELECT * FROM users WHERE id='".mysql_real_escape_string($id)."'"); $zobraz = mysql_fetch_array($profil); if(isset($_POST['zmena'])) { mysql_query("UPDATE users SET viditelnyemail='".$_POST['videmail']."', viditelnaregistrace='".$_POST['vidreg']."' WHERE id='".$zobraz['id']."'"); echo"<meta http-equiv='refresh' content='0;url=privacy.php?id=".$user['id']."'>";}?> <h1>Soukromí • <?php echo $zobraz['nick']; ?></h1> <small>Tady nastavíš co bude na tvém profilu viditelné všem.</small> <form action="" method="POST" class="form-horizontal"> <div class="form-group"> <label for="d_email">Viditelný email</label> <select name="videmail" class="form-control m-b"> <?php if($zobraz['viditelnyemail'] == 1){echo"<option value='0'>Nechat viditelný</option>";}else{echo"<option value='1'>Nechat neviditelný</option>";}?> <option value="0">Neviditelný</option> <option value="1">Viditelný</option> </select> </div> <div class="form-group"> <label for="d_reg">Viditelné datum registrace</label> <select name="vidreg" class="form-control m-b"> <?php if($zobraz['viditelnaregistrace'] == 1){echo"<option value='0'>Nechat viditelný</option>";}else{echo"<option value='1'>Nechat neviditelný</option>";}?> <option value="0">Neviditelné</option> <option value="1">Viditelné</option> </select> </div> <button class="btn btn-sm btn-primary pull-right m-t-n-xs" name="zmena">Upravit soukromí</button> <?php } else { echo "Můžeš si spravovat pouze svůj profil, nikoliv cizí!"; } } else { echo "Tento uživatel neexistuje!"; }; ?> <?php } else { ?> <?php echo "$only_logged" ?> <?php }; ?> |
||
DarkMeni Profil |
#2 · Zasláno: 14. 10. 2018, 02:23:20
V tomto kódu problém nevidím (když pominu zranitelnost na SQL injection přes
$_POST['videmail'] a $_POST['vidreg'] , doporučoval bych to obalit funkcí intval() , jelikož tam asi vždy bude jen 1 nebo 0, tedy: intval($_POST['videmail']) )
Není tam nějaký javascript? |
||
Josef Přerovský Profil |
#3 · Zasláno: 14. 10. 2018, 15:15:36
Až na tyto, žádný.
<script> tinymce.init({ selector: "textarea", // change this value according to your HTML plugins: "emoticons,autosave,image imagetools link preview", toolbar: "undo redo | bold italic underline | code | emoticons | restoredraft | image link | preview" }); </script> <script> $(document).ready(function(){ $('[data-toggle="tooltip"]').tooltip(); }); </script> V tom asi chyba nebude. intval též nefunguje. |
||
Davex Profil |
#4 · Zasláno: 15. 10. 2018, 00:33:51
Josef Přerovský:
Je to tedy hodně strašidelný kód, ale chyba bude nejspíš v přeházených hodnotách <option> ů.
|
||
Josef Přerovský Profil |
#5 · Zasláno: 15. 10. 2018, 19:45:34
Též myslím, kouknu na to ;)
|
||
Časová prodleva: 6 let
|
0