[ Príspevkov: 8 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.02.14
Prihlásený: 12.03.17
Príspevky: 211
Témy: 82 | 82
Bydlisko: Šuňava
Vek: 20
NapísalOffline : 31.05.2016 10:39 | Zapis datumu a mena do databázy

Kód:
<?php if(isset($_POST['prichod'])){
 
    $meno = mysql_query("select * from user order by meno") or die(mysql_error());
    $meno_log = mysql_query("select * from user_log order by meno") or die(mysql_error());
    $meno_log['meno'] == $meno['meno'];
     $date = date('Y-m-d H:i:s');
mysql_query("INSERT INTO `user_log`  (`login_date`,`meno`) VALUES ('$date','$meno')");
}?>

Ahojte, robím na projekte dochádzkového systému, kde mám 2 tlačidlá, jedno pre príchod a druhé pre odchod po kliknutí sa do DB zapíše dátum, áno, to funguje, ale namiesto mena mi do databázy napíše niečo ako Resource #id5. Neviem prečo. Mám tabuľku user, kde je uložené meno a heslo používateľa, ID.
V druhej tabuľke user_log mam login_date, logout_date a id logu, ale potrebujem tu importovať aj meno a ID z predchádzajúcej tabuľky a neviem ako nato. Skúšal som mnoho tutoriálov, ale nedokázal som si pomôcť. Ďakujem za každú radu, prípadne funkciu


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 13.11.07
Prihlásený: 20.08.16
Príspevky: 1719
Témy: 0 | 0
NapísalOffline : 31.05.2016 11:15 | Zapis datumu a mena do databázy

Kód:
$meno = mysql_query("select * from user order by meno") or die(mysql_error());
nevráti meno, vráti len nejaký objekt, pomocou ktorého sa dá k tomu menu dostať (a keď sa ten objekt pokúsiš zobraziť ako text, vypíše sa práve to Resource #id)


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.02.14
Prihlásený: 12.03.17
Príspevky: 211
Témy: 82 | 82
Bydlisko: Šuňava
Vek: 20
Napísal autor témyOffline : 31.05.2016 11:41 | Zapis datumu a mena do databázy

teda by som mal meno vypísať na základe ID? alebo .. neviem


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 17.07.11
Prihlásený: 29.03.17
Príspevky: 1377
Témy: 2 | 2
Bydlisko: Praha / Rev...
NapísalOffline : 31.05.2016 12:50 | Zapis datumu a mena do databázy

Tak za prvé, žiadnu selekciu tam nemáš. Obe query vždy vrátia všetky záznamy z tabulky a toť vše.
Za druhé, mysql_query vráti vždy objekt, alebo pole, z ktorého si musíš danú informáciu dostať. Použi napr. var_dump na preskúmanie toho, čo ti to vráti.

No a za tretie, toto
Kód:
$meno_log['meno'] == $meno['meno'];

to má robiť čo?

A ešte za štvrté, mysql pozná hodnotu CURRENT_TIMESTAMP, alebo NOW(), podľa verzie mysql. Nemusíš tam dávať dátum z php. A ešte lepšie je nastaviť to ako DEFAULT hodnotu pre stĺpec a nemusíš to riešiť vôbec.


_________________
Na súkromné správy týkajúce sa problémov, ktoré sa riešia vo fóre, neodpovedám!
Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.02.14
Prihlásený: 12.03.17
Príspevky: 211
Témy: 82 | 82
Bydlisko: Šuňava
Vek: 20
Napísal autor témyOffline : 31.05.2016 22:21 | Zapis datumu a mena do databázy

Už som to urobil a funguje to. Mám ale ďalší problém, nechcem zakladať ďalšiu tému. Potrebujem vypísať jednotlivo pre každého používateľa jeho príchody, aby mal zoznam, kedy prišiel do práce v uplynulých dňoch. Ale nefunguje mi to. Skúšal som to cez arraye, mysql fetch a mnoho iných funkcií, s while atď, ale stále mi pre každého vypíše iba jeden záznam. Vedeli by ste mi poradiť, kde je chyba? Var_dump mi taktiež vráti iba prvý záznam, ktorý bol kedy pre to ID používateľa zistený a tam akoby zastane.
Kód ako taký je postavený dobre, ak som tam niečo pozmenil, razom mi to dávalo hodnoty typu Resource ID atď.
Zapis datumu a mena do databázy

Používam 2 tabuľky:
USER --> meno, heslo, id(auto)
USER_LOG --> id, idlogu(auto), datum prihlásenia, dátum odhlásenia vrámci appky.
id(auto) a id sú totožné podľa používateľa a jeho session id.
Zapis datumu a mena do databázy
Zapis datumu a mena do databázy
Zapis datumu a mena do databázy
Zapis datumu a mena do databázy
script zo súboru, ktorý slúži na výpis prihlásení podľa jeho ID: (vráti iba jeden záznam)
Kód:
  <?php

if(!isset($_SESSION['uid'])){
   echo "Musíš byť prihlásený!";
}else{ ?>
   
<div id=tabulka><center>
<script>
function startTime() {
    var today = new Date();
    var h = today.getHours();
    var m = today.getMinutes();
    var s = today.getSeconds();
    m = checkTime(m);
    s = checkTime(s);
    document.getElementById('txt').innerHTML =
    h + ":" + m + ":" + s;
    var t = setTimeout(startTime, 500);
}
function checkTime(i) {
    if (i < 10) {i = "0" + i};  // add zero in front of numbers < 10
    return i;
}
</script>
<font size=16 color=white><b><body onload="startTime()">
<div id="txt" ></div></b></font>
<?php $ID = ($_SESSION['uid']);
mysql_set_charset("utf8");
   $user_get = mysql_query("SELECT * FROM `user` WHERE `id`='".$_SESSION['uid']."'") or die(mysql_error());
$user = mysql_fetch_assoc($user_get);
$meno=$user['meno'];
 $krstnemeno=$user['krstnemeno'];
  $priezvisko=$user['priezvisko'] ?>
<h2>Vitajte, pán/pani <?php echo $krstnemeno?>&nbsp; <?php echo $priezvisko; ?> , tu si môžete prezrieť vaše príchody do práce</h2></center>
 <?php  mysql_query("SELECT * FROM `user_log` WHERE `id`='".$ID."'") or die(mysql_error());     
 $login_get = mysql_query("SELECT * FROM `user_log` WHERE `id`='".$_SESSION['uid']."'") or die(mysql_error());
$login = mysql_fetch_assoc($login_get);
$zaznamloginu= $login['login_date'];
echo  $zaznamloginu;
   
     
       

 } ?>   

 
  <a href="poprihlaseni.php">
    <button type="button" align=left class="xmiddle green button round">Späť</button>
</a>

Ďakujem za každú radu. Som fakt bezradný a neviem sa ďalej pohnúť. Skúšal som 2 hodiny meniť hodnoty, pretáčať ich, skúšať rôzne finty a nejde to.. Ďakujem


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 06.02.14
Prihlásený: 29.03.17
Príspevky: 438
Témy: 9 | 9
NapísalOffline : 01.06.2016 8:56 | Zapis datumu a mena do databázy

zacni tym, ze si urobis poriadok v kode.
miesas php, html, styly a javascript v jednom subore... hroza pozerat a zachvilu sa ani ty v tom nebudes vyznat ak sa este vyznas

1. oddel php funkncu cast do samostatneho subory
2. javascript do samostatneho suboru. a podla mna by si ho tam ani nepotreboval, lebo to, na co vyuzivas, by sa dalo v php alebo priamo v mysql prikaze. nerozumies poriadne ani jednemu jazyku, tak sa vyhni ich miesaniu
3. robis jednu sql query 3krat a uplne zbytocne, raz by stacilo na ziskanie udajov
4. mysql_query sa uz nepouziva! je deprecated

Kód:
<font size=16 color=white><b><body onload="startTime()"><div id="txt" ></div></b></font>

nemyslis vazne,ze?
1. font sa uz nepouziva
2. tieto html atributy sa uz nepouzivaju
3. a urcite nemozu byt pred <body>
4. html elementy nemas pozatvarane, atributy nemaju uvodzovky
5. ako mozes uzavriet element predtym ako uzavries child element?
5. <center> sa nepouziva
6. pouzivaj spravnu indentaciu

a odpoved na tvoju otazku, ze preco mas iba jeden zaznam:
Kód:
$login_get = mysql_query("SELECT * FROM `user_log` WHERE `id`='".$_SESSION['uid']."'") or die(mysql_error());
$login = mysql_fetch_assoc($login_get);

treba iterovat, lebo $login_get obsahuje n-riadkov, alebo mysql_fetch_assoc spracuje iba jeden riadok do pola, tj ten prvy. ako to teda spravne pouzit: http://php.net/manual/en/function.mysql-fetch-assoc.php
a takisto - mysql_fetch_assoc je deprecated!


Offline

Užívateľ
Užívateľ
Obrázok užívateľa

Registrovaný: 17.02.14
Prihlásený: 12.03.17
Príspevky: 211
Témy: 82 | 82
Bydlisko: Šuňava
Vek: 20
Napísal autor témyOffline : 01.06.2016 10:05 | Zapis datumu a mena do databázy

nedokážem to s tým mysql fetch assoc.. skúšal som všetky varianty a nejde to.


Offline

Skúsený užívateľ
Skúsený užívateľ
Obrázok užívateľa

Registrovaný: 13.11.07
Prihlásený: 20.08.16
Príspevky: 1719
Témy: 0 | 0
NapísalOffline : 01.06.2016 13:33 | Zapis datumu a mena do databázy

Priamo v dokumentácii je príklad, v ktorom je ukázané, ako sa to používa mysql_fetch_assoc (a ako už bolo napísané tú funkciu mysql_fetch_assoc treba použiť v nejakom cykle, v tom príklade použili while)

PS: A ak chceš, aby ti nikto neporadil, tak "nejde to" je najlepší spôsob, ako to dosiahnuť.


 [ Príspevkov: 8 ] 


Zapis datumu a mena do databázy



Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy.

vyber z databazy podla datumu

v Databázy

7

617

11.03.2010 21:38

rooobertek

V tomto fóre nie sú ďalšie neprečítané témy.

zápis do databázy

v PHP, ASP

10

385

21.12.2009 13:01

M1rcO_o

V tomto fóre nie sú ďalšie neprečítané témy.

zapis do databazy

v Redakčné systémy

2

271

21.01.2007 16:10

luko

V tomto fóre nie sú ďalšie neprečítané témy.

zapis URL do databazy

v PHP, ASP

6

365

26.10.2007 13:16

newboy1

V tomto fóre nie sú ďalšie neprečítané témy.

Určenie zobrazenia dátumu a času nahraného z databázy

v PHP, ASP

6

218

01.05.2010 16:58

programmer

V tomto fóre nie sú ďalšie neprečítané témy.

[VYRIESENE] prosím o pomoc- zápis do databázy

v PHP, ASP

3

232

20.03.2009 10:05

korelat22

V tomto fóre nie sú ďalšie neprečítané témy.

Mena

v Redakčné systémy

1

931

13.05.2006 17:14

gumy

V tomto fóre nie sú ďalšie neprečítané témy.

Format datumu

v PHP, ASP

9

363

09.03.2010 16:46

stenley

V tomto fóre nie sú ďalšie neprečítané témy.

formát dátumu

v PHP, ASP

8

289

15.01.2009 15:48

Tominator

V tomto fóre nie sú ďalšie neprečítané témy.

zmena datumu

v Databázy

3

96

16.08.2013 14:47

stenley

V tomto fóre nie sú ďalšie neprečítané témy.

zistenie vcerajsieho datumu

v PHP, ASP

15

641

12.05.2007 21:09

kmsa

V tomto fóre nie sú ďalšie neprečítané témy.

Zoradenie podla datumu

v PHP, ASP

29

734

24.11.2007 18:19

Flety

V tomto fóre nie sú ďalšie neprečítané témy.

Zmena formátu dátumu

v PHP, ASP

12

359

30.01.2010 8:28

Draex

V tomto fóre nie sú ďalšie neprečítané témy.

Zmena mena používateľa...

v Operačné systémy Microsoft

4

4910

27.10.2010 18:10

killer

V tomto fóre nie sú ďalšie neprečítané témy.

Zmena prihlasovacieho mena

v Správy pre vedenie fóra

4

736

17.04.2011 8:20

JakkubXXL

V tomto fóre nie sú ďalšie neprečítané témy.

zmena mena administratora

v Operačné systémy Microsoft

3

499

15.12.2006 14:39

johny128



Powered by phpBB 3.x.x © 2005 - 2017 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF