Zadejte hledaný výraz...

Změna údajů v DB u všech uživatelů

kulisek926
verified
rating uzivatele
27. 2. 2014 16:21:52
Dobrý den.
Potřeboval bych poradit. Mám v DB dvě hodnoty, které můžu měnit na stránkách. Bohužel když provedu změnu tak se to změní u všech registrovaných nikoli jen u mě. Níže je kód a věřím, že mi poradíte. Díky
if (isset($_POST) and $_POST=="send") {
send();
} else {
change();
}
//switch ($action){
//case "send":
//send();
//break;
//default:
//change();
//break;
//}
function change(){
$q = mysql_query("SELECT * FROM uzivatele WHERE prihlasovaci_jmeno ='".$riadok."'") OR die(mysql_error());
$p = mysql_fetch_array($q);
?>
Investice:
Strategie:
% / měsíc
}
function send(){
$zakladni_kapital=$_POST;
if (strlen($zakladni_kapital) < 1) {
$modul=$_POST;
$exec="update uzivatele set modul=('$modul')";
mysql_query($exec);
//echo $exec;
//echo mysql_error();
echo "
Modul byl změněn! Zpět na nastavení strategie
";exit;
}else{
require_once("config2.php");
mysql_select_db("d63561_db2");
if(session){
$exec="update uzivatele set zakladni_kapital=('$zakladni_kapital')";
mysql_query($exec);
//echo $exec;
//echo mysql_error();
echo "
Základní kapitál byl změněn! Zpět na nastavení strategie
";exit;
}
}
}
?>
27. 2. 2014 16:21:52
https://webtrh.cz/diskuse/zmena-udaju-v-db-u-vsech-uzivatelu#reply1001049
Petr Pojer
verified
rating uzivatele
(9 hodnocení)
27. 2. 2014 16:24:30
Chybí ti tam WHERE, čímž určíš, u kterého uživatele se to má upravit. Např. to, co máš nahoře
27. 2. 2014 16:24:30
https://webtrh.cz/diskuse/zmena-udaju-v-db-u-vsech-uzivatelu#reply1001048
kulisek926
verified
rating uzivatele
27. 2. 2014 16:37:36
Bohužel toto jsem zkoušel a nefunguje to nevím proč. Když místo toho riadok dám přímo jméno funguje to, ale když to dám obecně tak nikoli. Je to důležité a nefunguje to a já už nevím oc zkusit. Děkuji jestli na to přijdete.
27. 2. 2014 16:37:36
https://webtrh.cz/diskuse/zmena-udaju-v-db-u-vsech-uzivatelu#reply1001047
Taps
verified
rating uzivatele
(118 hodnocení)
27. 2. 2014 16:46:34
odkud se bere ?
27. 2. 2014 16:46:34
https://webtrh.cz/diskuse/zmena-udaju-v-db-u-vsech-uzivatelu#reply1001046
kulisek926
verified
rating uzivatele
27. 2. 2014 17:13:39
Právě by to mělo brát z DB. V DB je sloupec prihlasovaci_jmeno. Chci, aby uživatelé mohli tyto dvě hodnoty měnít a vždy se to změní u toho, který je přihlášen nikoli u všech najednou nebo jinak. Prostě se přihlásím a změním si to a v DB se to změní jen u mě. Věřím, že mi poradíte jak to napsat, protože opravdu to nefunguje a nemůžu přijít na to jak to udělat.
27. 2. 2014 17:13:39
https://webtrh.cz/diskuse/zmena-udaju-v-db-u-vsech-uzivatelu#reply1001045
iTerminator
verified
rating uzivatele
(9 hodnocení)
27. 2. 2014 18:57:54
Jasný, chápu tě a určitě nejsem sám, říkáš, že pokud tam dáš jméno přímo, tak to funguje, problém může tedy být v tom, že proměnná, jež používáš není inicializovaná, jinými slovy, nemá hodnotu a WHERE potom nefunguje správně, zkus si udělat menší debug ve scriptu, vyechuj si to proměnnou, vyechuj si třeba celý ten SQL dotaz, věřím, že na to příjdeš.
27. 2. 2014 18:57:54
https://webtrh.cz/diskuse/zmena-udaju-v-db-u-vsech-uzivatelu#reply1001044
kulisek926
verified
rating uzivatele
27. 2. 2014 19:17:39
Já už zkoušel vše co se dalo a prostě nefunguje nic. Nevím co s tím a myslel jsem, že mi tu někdo poradí tak věřím, že se tak stane.
27. 2. 2014 19:17:39
https://webtrh.cz/diskuse/zmena-udaju-v-db-u-vsech-uzivatelu#reply1001043
iTerminator
verified
rating uzivatele
(9 hodnocení)
27. 2. 2014 19:24:25
Chceš radu nebo hotové řešení? Sám se zamysli, jestliže dosadíš jméno manuálně, tak vše funguje, pokud dosadíš proměnnou, tak dotaz nefunguje správně, vše směřuje k hodnotě proměnné a vůbec nesdělil jsi, kde se ta proměnná bere. Pošli celý kod, nebo alespon cykl, kde inicializuješ proměnnou $riadok.
27. 2. 2014 19:24:25
https://webtrh.cz/diskuse/zmena-udaju-v-db-u-vsech-uzivatelu#reply1001042
kulisek926
verified
rating uzivatele
27. 2. 2014 19:34:51
Však já napsal, že se to bere z DB. Ten kód upravím ať vidíte vše, ale nevím kde je problém. Ano vím, že je to s tou proměnnou, ale nevím jak to vyřešit a opravdu mi nepomůže, že se mám zamyslet a takové rady. to potom si můžu to vyřešit sám i když nevím jak. To je vše co tam je dále tam mám menu, ale to nemá nic společného. Děkuji za rady, ale ne typu zamysli se atd.
$q = mysql_query("SELECT * FROM uzivatele WHERE prihlasovaci_jmeno ='".$riadok."'") OR die(mysql_error());
$p = mysql_fetch_array($q);
?>
V níže uvedené tabulce si nastavíte výši investice, kterou jste ochotni využít, abyste mohli vydělávat. Dále si zvolíte příslušný modul, které nabízí určitá procenta a rizika úspěšnosti. Tyto dvě hodnoty si určite sami. Uložíte tyto hodnoty a druhé tabulce se Vám automaticky vypočte měsíční a denní výnos. Ve spodní části stránky naleznete ukázkový příklad funčknosti celého systému.


Když tyto hodnoty změníte tak se automaticky přepočtou výše zmíněné výnosy.


Když kliknete na Uložit bez vyplnění výše investice tak se Vám automaticky změní strategie. Když vyplníte výši investice tak se změní investice a strategie zůstane.

POZOR!!!!

Pohybujeme se pořád v rámci sázek, které se i přes profesionální a dlouholeté zkušenosti mohou vymknout kontrole.Proto radíme všem, aby si zvolili investici, který v případě možného neúspěchu nezmění jejich životní úroveň.


Jde například o to, že máte volné peníze, které hodláte utratit za dovolenou. Když o ně přijdete nebude to pro Vás mít až tak tragický dopad. Pokud by jste sázeli peníze na nájem je to ovšem věc jiná, kdy je ohrožena Vaše základní životní potřeba.


Zkrátka s rozumem.
if (isset($_POST) and $_POST=="send") {
send();
} else {
change();
}
//switch ($action){
//case "send":
//send();
//break;
//default:
//change();
//break;
//}
function change(){
$q = mysql_query("SELECT * FROM uzivatele WHERE prihlasovaci_jmeno ='".$riadok."'") OR die(mysql_error());
$p = mysql_fetch_array($q);
?>
Investice:
Strategie:
% / měsíc
}
function send(){
$zakladni_kapital=$_POST;
if (strlen($zakladni_kapital) < 1) {
$modul=$_POST;
$exec="update uzivatele set modul=('$modul')";
mysql_query($exec);
//echo $exec;
//echo mysql_error();
echo "
Modul byl změněn! Zpět na nastavení strategie
";exit;
}else{
require_once("config2.php");
mysql_select_db("d63561_db2");
if(session){
$exec="update uzivatele set zakladni_kapital=('$zakladni_kapital') WHERE prihlasovaci_jmeno ='".$riadok."'";
mysql_query($exec);
//echo $exec;
//echo mysql_error();
echo "
Základní kapitál byl změněn! Zpět na nastavení strategie
";exit;
}
}
}
?>
27. 2. 2014 19:34:51
https://webtrh.cz/diskuse/zmena-udaju-v-db-u-vsech-uzivatelu#reply1001041
iTerminator
verified
rating uzivatele
(9 hodnocení)
27. 2. 2014 19:49:38
Napsal kulisek;1062147
Však já napsal, že se to bere z DB. Ten kód upravím ať vidíte vše, ale nevím kde je problém. Ano vím, že je to s tou proměnnou, ale nevím jak to vyřešit a opravdu mi nepomůže, že se mám zamyslet a takové rady. to potom si můžu to vyřešit sám i když nevím jak. To je vše co tam je dále tam mám menu, ale to nemá nic společného. Děkuji za rady, ale ne typu zamysli se atd.
$q = mysql_query("SELECT * FROM uzivatele WHERE prihlasovaci_jmeno ='".$riadok."'") OR die(mysql_error());
$p = mysql_fetch_array($q);
?>
V níže uvedené tabulce si nastavíte výši investice, kterou jste ochotni využít, abyste mohli vydělávat. Dále si zvolíte příslušný modul, které nabízí určitá procenta a rizika úspěšnosti. Tyto dvě hodnoty si určite sami. Uložíte tyto hodnoty a druhé tabulce se Vám automaticky vypočte měsíční a denní výnos. Ve spodní části stránky naleznete ukázkový příklad funčknosti celého systému.


Když tyto hodnoty změníte tak se automaticky přepočtou výše zmíněné výnosy.


Když kliknete na Uložit bez vyplnění výše investice tak se Vám automaticky změní strategie. Když vyplníte výši investice tak se změní investice a strategie zůstane.

POZOR!!!!

Pohybujeme se pořád v rámci sázek, které se i přes profesionální a dlouholeté zkušenosti mohou vymknout kontrole.Proto radíme všem, aby si zvolili investici, který v případě možného neúspěchu nezmění jejich životní úroveň.


Jde například o to, že máte volné peníze, které hodláte utratit za dovolenou. Když o ně přijdete nebude to pro Vás mít až tak tragický dopad. Pokud by jste sázeli peníze na nájem je to ovšem věc jiná, kdy je ohrožena Vaše základní životní potřeba.


Zkrátka s rozumem.
if (isset($_POST) and $_POST=="send") {
send();
} else {
change();
}
//switch ($action){
//case "send":
//send();
//break;
//default:
//change();
//break;
//}
function change(){
$q = mysql_query("SELECT * FROM uzivatele WHERE prihlasovaci_jmeno ='".$riadok."'") OR die(mysql_error());
$p = mysql_fetch_array($q);
?>
Investice:
Strategie:
% / měsíc
}
function send(){
$zakladni_kapital=$_POST;
if (strlen($zakladni_kapital) < 1) {
$modul=$_POST;
$exec="update uzivatele set modul=('$modul')";
mysql_query($exec);
//echo $exec;
//echo mysql_error();
echo "
Modul byl změněn! Zpět na nastavení strategie
";exit;
}else{
require_once("config2.php");
mysql_select_db("d63561_db2");
if(session){
$exec="update uzivatele set zakladni_kapital=('$zakladni_kapital') WHERE prihlasovaci_jmeno ='".$riadok."'";
mysql_query($exec);
//echo $exec;
//echo mysql_error();
echo "
Základní kapitál byl změněn! Zpět na nastavení strategie
";exit;
}
}
}
?>
Nikde tam proměnnou $riadok neinicializuješ, potřebuji ten kus kodu, kde máš inicializaci té proměnné.
27. 2. 2014 19:49:38
https://webtrh.cz/diskuse/zmena-udaju-v-db-u-vsech-uzivatelu#reply1001040
kulisek926
verified
rating uzivatele
27. 2. 2014 19:58:42
Takže už jsem na to přišel. Chybělo to definování toho řádku tak jsem to tam dopsal.
$session_id = $_SESSION;
$riadok2 = mysql_query("SELECT * FROM uzivatele WHERE `id` ='".$session_id."'");
$riadok = mysql_fetch_array($riadok2);
Toto jsem přidal a už to funguje. Mění to u toho přihlašeného. Děkuji všem.
27. 2. 2014 19:58:42
https://webtrh.cz/diskuse/zmena-udaju-v-db-u-vsech-uzivatelu#reply1001039
Pro odpověď se přihlašte.
Přihlásit