Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [MySQL][PHP]UPDATE daty
Forum PHP.pl > Forum > Przedszkole
mit2
witam mam taki problem z update daty mam taki kod
  1. $upd = "UPDATE serwer SET tryb='1', datastop='".date('Y-m-d H:i:s', strtotime($okresx))."', datadelete='".date('Y-m-d H:i:s', strtotime($idsfnasy))."' WHERE port='$srp[port]'";

przy insert działa normalnie ale przy update nie idzie zmienic daty jak to moge zrobic z góry dzięki
worek
Ot coś takiego:

$sql = "UPDATE cms_user SET user= '".$_POST['newusername']."', password = '".$_POST['newpass']."', accesslevel = '".$_POST['newaccesslevel']."' WHERE user = '".$_POST['nazwausera']."'";

myślę że ci pomoże biggrin.gif
sadistic_son
  1. $datastop=date('Y-m-d H:i:s', strtotime($okresx));
  2. $datadelete=date('Y-m-d H:i:s', strtotime($idsfnasy));
  3. $upd = "UPDATE serwer SET tryb='1', datastop='".$datastop."', datadelete='".$datadelete."' WHERE port='$srp[port]'";
Do tego sprawdź typ danych w polu tryb. Jeśli jest to INT to nie dawaj tam apostrofu, czyli tryb=1.

Cytat(worek @ 30.05.2011, 18:32:16 ) *
myślę że ci pomoże biggrin.gif
A jak ma mu to niby pomóc? Bo szczerze mówiąc związku nie dostrzegam....
worek
błąd masz w klazuli WHERE zmienną masz w `` a powinna być rozbita bo sql ci tego nie przyjmie smile.gif

WHERE port='".$srp[port]."';";
mit2
to już zrobiłem ale mam jeszcze jedno pytanko jeżeli mam w sql datę podaną to i chciałbym zrobic update do tej daty i dodac np. jakis okres czasu (miesiąc, 2 miesiące, 3 miesiące itp.) jak moge to zrobic
melkorm
INTERVAL
worek
Cytat(mit2 @ 30.05.2011, 18:59:42 ) *
to już zrobiłem ale mam jeszcze jedno pytanko jeżeli mam w sql datę podaną to i chciałbym zrobic update do tej daty i dodac np. jakis okres czasu (miesiąc, 2 miesiące, 3 miesiące itp.) jak moge to zrobic


Troszkę jaśniej proszę, chodzi ci o to że: włączasz skrypt jeżeli data jest większa niż 1 miech to wtedy coś tam się updatuje?
Na pewno pomogą ci wyrażenia regularne funkcja ereg
mit2
chce do tej daty co jest w bazie dodac np. 1 miesiąc.
mam taki kod
  1. if($zam[okres] == '1')
  2. {
  3. $okresx = '+30 days';
  4. $idsfnasy = '+40 days';
  5. }
  6. if($zam[okres] == '2')
  7. {
  8. $okresx = '+60 days';
  9. $idsfnasy = '+70 days';
  10. }
  11. if($zam[okres] == '3')
  12. {
  13. $okresx = '+90 days';
  14. $idsfnasy = '+100 days';
  15. }
  16. if($zam[okres] == '6')
  17. {
  18. $okresx = '+180 days';
  19. $idsfnasy = '+190 days';
  20. }
  21. if($zam[okres] == '12')
  22. {
  23. $okresx = '+1 year';
  24. $idsfnasy = '+375 days';
  25. }


który przedłuża o jakiś czas
sadistic_son
Cytat(worek @ 30.05.2011, 18:35:00 ) *
błąd masz w klazuli WHERE zmienną masz w `` a powinna być rozbita bo sql ci tego nie przyjmie smile.gif
Bzdura. Po pierwsze ma w ' a nie w `. Po drugie takie coś:
  1. $a="lalala lalala $_POST[hehe] lalal";
jest tak samo poprawne jak to:
  1. $a="lalala lalala ".$_POST['hehe']." lalal";
Tak więc w WHERE ma wszystko ok jeśli chodzi o cudzysłowy czy łączenie stringów.
worek
Cytat(sadistic_son @ 30.05.2011, 19:06:58 ) *
Bzdura. Po pierwsze ma w ' a nie w `. Po drugie takie coś:
  1. $a="lalala lalala $_POST[hehe] lalal";
jest tak samo poprawne jak to:
  1. $a="lalala lalala ".$_POST['hehe']." lalal";
Tak więc w WHERE ma wszystko ok jeśli chodzi o cudzysłowy czy łączenie stringów.


Niestety where nie miało wszystkiego i sam autor ci odpowiedział. Po drugie nie użyłem symbolu ``````````` tylko '''''''''''''''''''''' więc się odemnie za przeproszeniem mocium panie odczep. Co do łączenia stringów nie było przy where id = .$zmienna. Czytaj uważnie kolego albo do okulisty. Po czawarte napisałeś pierdołę, bo inaczej się łączy stringi dla zmiennej inaczej dla zapytania sql.
sadistic_son
A przeczytaj swój post jeszcze raz. Napisałeś wyraźnie:
Cytat
(...)zmienną masz w `` a powinna(...)
Czyli powiedziałeś mu, że ma ```` podczas gdy ma '''''' smile.gif

Cytat
(...)bo inaczej się łączy stringi dla zmiennej inaczej dla zapytania sql.
Ciekawe teorie wysnuwasz smile.gif Możesz trochę rozwinąć i objaśnić co masz na myśli?
worek
Podstawy szefuniu, kup dobrą książkę o php czy coś bo na internecie daleko nie zajedziesz biggrin.gif I nie przekręcaj moich zdań okej.
sadistic_son
Cytat(worek @ 30.05.2011, 19:24:44 ) *
I nie przekręcaj moich zdań okej.
W którym momencie przekręciłem Twoje zdanie? No wskaż.

Cytat(worek @ 30.05.2011, 19:24:44 ) *
Podstawy szefuniu, kup dobrą książkę o php czy coś bo na internecie daleko nie zajedziesz biggrin.gif
Znam podstawy i nie tylko. Ale pomóż mi je uzupełnić. Podaj jakiś link czy coś potwierdzający to:
Cytat
inaczej się łączy stringi dla zmiennej inaczej dla zapytania sql.
No śmiało biggrin.gif

Może byś zarzucił w końcu jakimś konkretem zamiast tych swoich "kup dobrą książkę". Coś Ci się grunt pod nogami pali co? Szefunciu...
melkorm
Przestańcie z tym offtop'em.


@mit2,
Dostałeś odpowiedź, poszukaj w manualu MySql'a, musisz się tego nauczyć ( czyt. przeszukiwać internet w poszukiwaniu informacji ).
worek
Twoja wersja zapytania i moja dają praktycznie to samo. Jednak z semantycznego punktu widzenia dobrze jest podawać zmienne typu array zawsze w nawiasach w apkach. $_POST['zmienna'] i każdy profesor ci to powie na uczelni.

błąd masz w klazuli WHERE zmienną masz w `` a powinna być rozbita bo sql ci tego nie przyjmie smile.gif

tu się ciut walnęłem bo miało być '' zamiast `` i się bajzel zrobił a co do błędu to skoro on już zastosował takie formatowanie zmiennej w zapytaniu do sql to jego sprawa.

Aha i sorka za offtopa
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.