scadere o zi la o variabila tip data
Discutii despre script-uri si coduri PHP-MySQL, precum si lucru cu XML in PHP.
-
andras
- Mesaje:430
scadere o zi la o variabila tip data
Salut,
Am o variabila tip data (vine ca POST din element type="date") si are valoarea (exemplu)
Cind vreau sa scad o zi cu intructiunea :
Cod: Selectaţi tot
$v3= date('Y-m-d', strtotime($v2. ' - 1 day'));
imi afiseaza 1970-01-01 si nu '2016-04-01' cum ar fi normal. Care sa fie cauza? Multumesc.
MarPlo
Mesaje:4343
Salut,
La mine a functionat corect acest exemplu (poate problema e de la altceva legat de datele primite):
Cod: Selectaţi tot
$v2 ='2016-04-02';
$v3 = date('Y-m-d', strtotime ($v2 .'- 1 day'));
echo $v3; // 2016-04-01
andras
Mesaje:430
Acum am reusit, eu preluam din POST cu instructiunea
Cod: Selectaţi tot
$v2 = "'".trim($_POST[$value])."'"; // afiseaza '2016-04-02'
- deci puneam ghilimele la POST. Am sters ghilimelele si acum functioneaza. Totusi, n-ar fi trebuit ca variabila sa fie recunoscuta si cu ghilimele? Aici nu inteleg, daca PHP coverteste automat, de ce nu o face si aici? Am mai intilnit astfel de situatii si inca n-am o explicatie.
MarPlo
Mesaje:4343
Nu inteleg de unde aceasta practica cu Extra ghilimele adaugate la capetele unui sir. Isi are rostul foarte rar, atunci cand vrei sa transformi un numar in sir.
Explicatia de ce nu functiona reiese din acest exemplu:
Cod: Selectaţi tot
$v1 ='2016-04-02';
echo $v1; // 2016-04-02 (output doar valoarea, fara ghilimele)
$v2 = "'". $v1 ."'";
echo $v2; // '2016-04-02' (output cu ghilimele, valoarea contine si ghilimele)
$v3 ="'2016-04-02'"; // '2016-04-02' (e la fel ca $v2)
andras
Mesaje:430
Am pus extraghilimele pentru ca nu-mi recunostea variabilele POST cind aveam INSERT sau UPDATE, unele erau recunoscute altele nu, dupa ce am pus extraghilimele le-a recunoscut pe toate. Nici acum nu-mi face INSERT decit daca pun extraghilimele la cimpul tip DATE:
Cod: Selectaţi tot
$re="INSERT INTO `user_sal` (`iduser`, `salar`, `datasal`, `datasalv`, `userid`)
VALUES (".$id.", ".$v1.", ".$v2.",".$v3.",".$userid." )"; //nu face INSERT -$v2 si $v3 sint tip data
$re="INSERT INTO `user_sal` (`iduser`, `salar`, `datasal`, `datasalv`, `userid`)
VALUES (".$id.", ".$v1.", '".$v2."','".$v3."',".$userid." )"; //functioneaza -$v2 si $v3 sint tip data
MarPlo
Mesaje:4343
Ai dreptate, la adaugare valoare tip sir in baza de date se adauga sirul intre ghilimele, si e bine sa fie adaugate direct in instructiunea SQL.
Subiecte similare
- Eroare de variabila in php 8
PHP - MySQL - XML
Primul mesaj
Salut
Am trecut la php 8 si imi da eroarea asta
Warning: Undefined variable $page in G:\site\htdocs\system\site\page.php on line 16
in...
Ultimul mesaj
Imi mai da eroarea asta
Warning: Undefined array key message
iar eu am asa
$message=$_POST ;
Edit,
rezolvat cu
$message='';
if (isset($_POST...