Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> wymuszenie artości null dla pola time
Jarod
post
Post #1





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

Ostrzeżenie: (0%)
-----


Mam w bazie wartość godzina time

Czy da się tak zrobić, że gdy przypisuję temu polu wartość null to nie wypełnia jej formatem '00:00' ?


--------------------
”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335)
Go to the top of the page
+Quote Post
Adiasz
post
Post #2





Grupa: Zarejestrowani
Postów: 155
Pomógł: 0
Dołączył: 28.02.2004

Ostrzeżenie: (0%)
-----


  1. ALTER TABLE tabela ALTER godzina SET DEFAULT '00-00';
Go to the top of the page
+Quote Post
Jarod
post
Post #3





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

Ostrzeżenie: (0%)
-----


Cytat(Adiasz @ 2.08.2006, 07:43 ) *
  1. ALTER TABLE tabela ALTER godzina SET DEFAULT '00-00';

To wiem tylko nie o to mi chodzi.

Jak podczas tworzenia tabeli dasz godzina TIME to podczas błędnej składni danych, które chcesz wprowadzić do tego pola, mysql sam wstawi 00:00.

A ja chcę mieć możliwość zmiany domyślnej wartości z 00:00 na wartość NULL/pustą


--------------------
”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335)
Go to the top of the page
+Quote Post
nospor
post
Post #4





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




No to chyba analogicznie....
  1. ALTER TABLE tabela ALTER godzina SET DEFAULT NULL;

No i pole musi przyjmować wartosci null.

pozatym poprawnosc daty/czasu powinienes sprawdzac przed wlozeniem do bazy


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Jarod
post
Post #5





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 2.08.2006, 08:13 ) *
No to chyba analogicznie....
  1. ALTER TABLE tabela ALTER godzina SET DEFAULT NULL;

No i pole musi przyjmować wartosci null.

pozatym poprawnosc daty/czasu powinienes sprawdzac przed wlozeniem do bazy


Sprawdzam i jak jest niepoprawna to chcesz wrzucać nulla. Twój sposób nie działa. Jak wrzucam pustą wartość to mysql ładuje w tym polu '00:00'


--------------------
”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335)
Go to the top of the page
+Quote Post
nospor
post
Post #6





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Bo ty nie masz wstawiac pustej wartosci, a masz wstawiac null. Wowczas dziala jak ta lala

ps: testowalel to na polu typu DATE i TIME. Na DATE wstawia null, na TIME wstawia 00:00 (mowie o przypadku wstawiania "pustej wartosci"). Wstawianie wszedzie null dziala i tu i tu smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Jarod
post
Post #7





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 2.08.2006, 14:46 ) *
Bo ty nie masz wstawiac pustej wartosci, a masz wstawiac null. Wowczas dziala jak ta lala

ps: testowalel to na polu typu DATE i TIME. Na DATE wstawia null, na TIME wstawia 00:00 (mowie o przypadku wstawiania "pustej wartosci"). Wstawianie wszedzie null dziala i tu i tu smile.gif


Nie wstawia. Przynajmniej nie ze skryptu php


--------------------
”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335)
Go to the top of the page
+Quote Post
nospor
post
Post #8





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




pokaz ten skrypt bo mi sie wierzyc nie chce.

edit:
tak sobie mysle, ze ty moze wstawiasz napis null: 'null'
a powinienes wstawiac null, bez apostrofow. Takie bledy juz widzialem na forum smile.gif


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Jarod
post
Post #9





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 2.08.2006, 15:15 ) *
pokaz ten skrypt bo mi sie wierzyc nie chce.

edit:
tak sobie mysle, ze ty moze wstawiasz napis null: 'null'
a powinienes wstawiac null, bez apostrofow. Takie bledy juz widzialem na forum smile.gif



  1. <?php
  2. // Jeśli przekazano dane do zapisu to zapisujemy je do bazy
  3. if ( ($_GET['tryb'] == 'z') && !empty($id) )
  4. {
  5. // sprawdzamy czy godzina została podana w poprawnym formacie, jeśli ni wstawiam N
    ULL
  6. if ( walidacjaGodziny($_POST['slot']) == '' ) $_POST['slot'] = NULL;
  7. if ( walidacjaGodziny($_POST['a_godzina']) == '' ) $_POST['a_godzina'] = NULL;
  8. if ( walidacjaGodziny($_POST['b_godzina']) == '' ) $_POST['b_godzina'] = NULL;
  9.  
  10. $query = 'UPDATE rampa SET '.
  11.  'znaki_ac=''.mysql_escape_string($_POST['znaki_ac']).'', '.
  12.  'slot=''.mysql_escape_string($_POST['slot']).'', '.
  13.  'aktualna_godzina1=''.mysql_escape_string($_POST['a_godzina']).'', '.
  14.  'stanowisko=''.mysql_escape_string($_POST['stanowisko']).'', '.
  15.  'plyta_radio=''.mysql_escape_string($_POST['plyta_radio']).'', '.
  16.  'aktualna_godzina2=''.mysql_escape_string($_POST['b_godzina']).'', '.
  17.  'oac=''.mysql_escape_string($_POST['oac']).'' '.
  18.  'WHERE rampa_id='.$id;
  19.  
  20. $result = mysql_query($query) or die ('Zapytanie nieudane!');
  21. }
  22. ?>


--------------------
”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335)
Go to the top of the page
+Quote Post
nospor
post
Post #10





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Robisz dokladnie to co napisalem:
Cytat
tak sobie mysle, ze ty moze wstawiasz napis null: 'null'
a powinienes wstawiac null, bez apostrofow. Takie bledy juz widzialem na forum

Co z tego ze ty przypiszesz dla zmiennej wartosc null, skoro ty potem to bierzesz w apostrof. na dodatek otrzymasz nie 'null' a '', gdyz null php to inny null niz mysql smile.gif

Podam ci przyklad, a ty se go dostsouj:
  1. <?php
  2. if ( walidacjaGodziny($_POST['slot']) == '' ) $slot = 'null';
  3. else $slot="'{$_POST['slot']}'";
  4.  
  5. $zapytanie = "......'jakies pole', 'jakiespole2', $slot,.....";
  6. ?>


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Jarod
post
Post #11





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 2.08.2006, 15:34 ) *
Robisz dokladnie to co napisalem:

Co z tego ze ty przypiszesz dla zmiennej wartosc null, skoro ty potem to bierzesz w apostrof. na dodatek otrzymasz nie 'null' a '', gdyz null php to inny null niz mysql smile.gif


Pokaż mi gdzie go wstawiam w apostrofie? blinksmiley.gif

Cytat(nospor @ 2.08.2006, 15:34 ) *
Podam ci przyklad, a ty se go dostsouj:
  1. <?php
  2. if ( walidacjaGodziny($_POST['slot']) == '' ) $slot = 'null';
  3. else $slot="'{$_POST['slot']}'";
  4.  
  5. $zapytanie = "......'jakies pole', 'jakiespole2', $slot,.....";
  6. ?>

Dlaczego muszę pisać
  1. <?php
  2. $slot = 'null';
  3. else $slot="'{$_POST['slot']}'";
  4. ?>
?
Nie mogę przypisać do wartości null do $_POST[slot'] ?


--------------------
”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335)
Go to the top of the page
+Quote Post
nospor
post
Post #12





Grupa: Moderatorzy
Postów: 36 557
Pomógł: 6315
Dołączył: 27.12.2004




Cytat
Pokaż mi gdzie go wstawiam w apostrofie?

Alez prosze cie bardzo:
'slot=\''.mysql_escape_string($_POST['slot']).'\', '.
tutaj smile.gif W $_POST masz null, ale ty to bierzesz potem w apostrof. pozatym pisalem ci ze null php to nie to samo co null mysql

przeanalizuj se jeszcze raz dokladnie moj sposob, wyswietl zapytanie jakie on generuje, bo nie mam sily ci juz dzis tego tlumaczyc. wloz troche swoich wysilkow.


--------------------

"Myśl, myśl, myśl..." - Kubuś Puchatek || "Manual, manual, manual..." - Kubuś Programista
"Szukaj, szukaj, szukaj..." - Kubuś Odkrywca || "Debuguj, debuguj, debuguj..." - Kubuś Developer

Go to the top of the page
+Quote Post
Jarod
post
Post #13





Grupa: Zarejestrowani
Postów: 1 190
Pomógł: 27
Dołączył: 23.04.2005

Ostrzeżenie: (0%)
-----


Cytat(nospor @ 2.08.2006, 16:37 ) *
Alez prosze cie bardzo:
'slot=\''.mysql_escape_string($_POST['slot']).'\', '.
tutaj smile.gif W $_POST masz null, ale ty to bierzesz potem w apostrof. pozatym pisalem ci ze null php to nie to samo co null mysql

przeanalizuj se jeszcze raz dokladnie moj sposob, wyswietl zapytanie jakie on generuje, bo nie mam sily ci juz dzis tego tlumaczyc. wloz troche swoich wysilkow.


Masz racje. Już wiem gdzie robiłem błąd . Dziękuje


--------------------
”Godzina nauki w życiu nowoczesnego apostoła jest godziną modlitwy.”
(św. Josemaría Escrivá, Droga, 335)
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 20.08.2025 - 12:16