Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> data w polu input
Lonas
post
Post #1





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


Hej, mam nastepujacy problem.
W polu tworzenia dokumenu znajduje sie pole ktore podaje mi date

  1. <input type="text" name="datasprzed" value="<?php echo(date("Y.m.d"));?>" />


Mam problem zeby pole z inputa przeslac do nastepnego pliku, nie moge uzywac form action poniewaz jest juz uzyte do czego innego, chcialem dane wrzucic do sesji ale nie dziala nie mam juz pomyslu.

Prosze o pomoc
Go to the top of the page
+Quote Post
dtb
post
Post #2





Grupa: Zarejestrowani
Postów: 476
Pomógł: 1
Dołączył: 5.11.2005
Skąd: Bieruń city

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


  1. <?php
  2. setcookie ('data', date (...));
  3. $_COOKIE['data']
  4. ?>


Ten post edytował dtb 14.12.2005, 16:51:28
Go to the top of the page
+Quote Post
Lonas
post
Post #3





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


to działa (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) tylko, jeśli teraz ktos zmieni wartosc daty w inpucie to do bazy danych nie wpisze sie ta zmieniona data tylko wskazana w ciasteczku (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)


a moge do cookies wpisac wartosc inputa ?

kombinuje z czyms takim żeby sprawdzić czy podziala ale .... (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)

  1. <input type="text" name="datasprzed" value="<?php echo (date ("Y.m.d")); ?>" />
  2. <?
  3. setcookie ('data',$datasprzed );
  4. $_COOKIE['data'];
  5. ?>
  6. <?print $_COOKIE['data'];?>


Ten post edytował L.Pociask 14.12.2005, 17:05:21
Go to the top of the page
+Quote Post
vtuner
post
Post #4





Grupa: Zarejestrowani
Postów: 220
Pomógł: 10
Dołączył: 23.08.2005
Skąd: Łódź

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


  1. <?php
  2. $data = date("Y.m.d")
  3. echo'<input type="text" name="datasprzed" value='.$data.' />';
  4. ?>


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





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


vtuner ok tak też się wyświetli (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
ale chodzi o to żeby teraz .. jeśli użytkownik zmieni sobie tą date w inpucie to żeby zostala ona zapisana i w nastepnym dokumencie jej wartosc zostanie wpisana do bazy danych.


to znaczy tutaj dziala:

  1. <input type="text" name="datasprzed" value="<?php echo (date ("Y.m.d")); ?>" />
  2. <?
  3. setcookie ('data',$datasprzed );
  4. $_COOKIE['data'];
  5. ?>
  6.  
  7. <a href="test2.php">utwórz dokument</a>
  8.  


w test 2 jest wyswietlenie cookies
  1. <?print $_COOKIE['data'];?>


ale zmiana daty w input nie jest uwzgieldniana

Ten post edytował L.Pociask 14.12.2005, 17:09:43
Go to the top of the page
+Quote Post
dtb
post
Post #6





Grupa: Zarejestrowani
Postów: 476
Pomógł: 1
Dołączył: 5.11.2005
Skąd: Bieruń city

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


<form><input type="text" name="datasprzed" value="<? date ("Y.m.d") ?>" /></form>
i spradź czy teraz jest zmienna _get['datasprzed']

EDIT: mozesz jeszcze przy wysylaniu formularza za pomoca js (onclick) ustawic ciasteczko (ale w javascript nie php) a potem normalnie go odebrac za pomoca php

Ten post edytował dtb 14.12.2005, 17:20:44
Go to the top of the page
+Quote Post
Lonas
post
Post #7





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


  1. <form><input type="text" name="datasprzed" value="<? print date ("Y.m.d") ?>" /></form>
  2.  
  3. <?
  4.  
  5. print $_get['datasprzed'];
  6.  
  7.  
  8.  
  9.  
  10. ?>


wywala błąd że jest niezdefiniowana zmienna czyli nie widzi nazwy tego inputa :/

wolałbym to zarobić w phpcu na javiescript wogóle sie nie znam

Ten post edytował L.Pociask 14.12.2005, 17:26:00
Go to the top of the page
+Quote Post
dtb
post
Post #8





Grupa: Zarejestrowani
Postów: 476
Pomógł: 1
Dołączył: 5.11.2005
Skąd: Bieruń city

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


eureka!

do kazdego formularza dodaj inputa:
  1. <input type="hidden" name="data_wyslij" value="<span style='color:orange'></span>" />

i dodaj do inputow typu submit:
  1. onclick="data_wyslij.value=datasprzed.value"


teraz wystarczy:
  1. <?php
  2. echo $_GET['data_wyslij'];
  3. ?>

i po sprawie

Ten post edytował dtb 14.12.2005, 17:44:53
Go to the top of the page
+Quote Post
dtb
post
Post #9





Grupa: Zarejestrowani
Postów: 476
Pomógł: 1
Dołączył: 5.11.2005
Skąd: Bieruń city

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


skoro jest w inpucie i zalezy na mozliwosci zmiany tego inputa, to logika podpowiada ze data ta jest ustawiana przez osobe przegladajaca strone.
Go to the top of the page
+Quote Post
Lonas
post
Post #10





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


No może być ustawiana ale nie musi. Domyślnie pojawia się data dzisiejsza ale ktoś może chcieć wystawić z datą wczorajszą np

mam to zrobione w ten sposób ale pisze że jest niezdefiniowany index data wyslij

  1. <form><input type="hidden" name="data_wyslij" value="<span style='color:orange'></span>" 
  2.  
  3. /></form>
  4.  
  5. <input type="text" name="datasprzed" value="<?php echo(date("Y.m.d"));?>" />
  6.  
  7.  
  8. <input type="submit" name="Submit" onclick="data_wyslij.value=datasprzed.value">
  9.  
  10.  
  11.  
  12.  
  13.  
  14.  
  15. <?php
  16. echo $_GET['data_wyslij'];
  17. ?>



i co jeśli pojawią mi sie 3 inputy z datami (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) w jednym data sprzedaży w drugim data wytawienia i w 3 proponowany czas zapłaty, to w każdym trzeba by przesyłac dane submitem ?

Ten post edytował L.Pociask 15.12.2005, 11:23:47
Go to the top of the page
+Quote Post
nospor
post
Post #11





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




bo jesli nie wyslesz formularza to nie ma takiego indexu. pozatym formularz domyslnei jest wysylany metoda post wiec musisz pobierac dane z $_POST a nie $_GET.

A inne inputy tez sie przesylaja razem z formularzem,

pozatym wszystkei pola musze byc w for,mularzu, anie tylko hidden
Go to the top of the page
+Quote Post
Lonas
post
Post #12





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


  1. <form><input type="hidden" name="data_wyslij" value="<span style='color:orange'></span>" />
  2.  
  3. <input type="text" name="datasprzed" value="<?php echo(date("Y.m.d"));?>" />
  4.  
  5.  
  6. <input type="submit" name="Submit" onclick="data_wyslij.value=datasprzed.value">
  7. </form>



i teraz musze użyć form action żeby przejsc np do test2 w którym będzie

  1. <?php
  2. echo $_POST['data_wyslij'];
  3. ?>


tylko form action w moim pliku jest juz użyte i chciałym to ominąć (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post
php programmer
post
Post #13





Grupa: Zarejestrowani
Postów: 1 045
Pomógł: 5
Dołączył: 8.11.2004
Skąd: trójmiasto

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


Cytat(L.Pociask @ 2005-12-14 15:40:10)
chcialem dane wrzucic do sesji ale nie dziala

A użyłeś:
session_start();
(IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif)

  1. <?php
  2.  
  3. $_SESSION['data'] = date();
  4.  
  5. ?>
Go to the top of the page
+Quote Post
Lonas
post
Post #14





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


Tak użyłęm, tylko czy mogę zapisać do sesji dane z inputa które wpisze użytkownik, domyślnie ustawia sie data dzisiejsza i jeśli zmieni na wczorajsza to zapisze sie ona do sesji ?


edit : nospor w tym przypadku działa ale jak mogę to zrobić bez form action bo mam już go użytego,
miałem wczesniej podobny problem ale udało mi się użyć sesji i działa,
tutaj nie chce działać

  1. <form action="test2.php"><input type="hidden" name="data_wyslij" value="<span 
  2.  
  3. style='color:orange'></span>" />
  4.  
  5. <input type="text" name="datasprzed" value="<?php echo(date("Y.m.d"));?>" />
  6.  
  7.  
  8. <input type="submit" name="Submit" onclick="data_wyslij.value=datasprzed.value">
  9. </form>


Ten post edytował L.Pociask 15.12.2005, 11:40:02
Go to the top of the page
+Quote Post
php programmer
post
Post #15





Grupa: Zarejestrowani
Postów: 1 045
Pomógł: 5
Dołączył: 8.11.2004
Skąd: trójmiasto

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


  1. <?php
  2.  
  3. if (isset($_SESSION['data'])) $data_w_polu = $_SESSION['data']);
  4.  else $data_w_polu = date("Y-m-d");
  5.  
  6. ?>


Ten post edytował php programmer 15.12.2005, 11:46:10
Go to the top of the page
+Quote Post
Lonas
post
Post #16





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


bład składni w tym wierszu

  1. <?php
  2. if (isset($_SESSION['data'])) $data_w_polu = $_SESSION['data']);
  3. ?>
Go to the top of the page
+Quote Post
php programmer
post
Post #17





Grupa: Zarejestrowani
Postów: 1 045
Pomógł: 5
Dołączył: 8.11.2004
Skąd: trójmiasto

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


na końcu jest niepotrzebny nawias zamykający
tuż przed średnikiem

Ten post edytował php programmer 15.12.2005, 11:59:16
Go to the top of the page
+Quote Post
Lonas
post
Post #18





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


czyli powinno to wygladac tak ?

plik tescik.php

  1.  
  2.  
  3. $db = mysql_pconnect("localhost", "root");
  4. mysql_select_db("jakar"); 
  5. if (!$db) {  
  6. print "wystąpił błąd w połączeniu";  
  7. exit;
  8. }
  9. ?>
  10.  
  11.  
  12. <input type="text" name="data_w_polu" value="<?php echo(date("Y.m.d"));?>" />
  13. <?
  14. if (isset($_SESSION['data'])) $data_w_polu = $_SESSION['data'];
  15.  else $data_w_polu = date("Y-m-d");
  16.  
  17. ?>
  18.  
  19.  
  20. <a href="test2.php">utwórz dokument</a>


plik test2.php

  1. echo $_SESSION['data'];
  2. ?>


wywala bład w test2
Notice: Undefined index: data in c:\program files\easyphp1-8\www\baza\tes\test2.php on line 2
Go to the top of the page
+Quote Post
php programmer
post
Post #19





Grupa: Zarejestrowani
Postów: 1 045
Pomógł: 5
Dołączył: 8.11.2004
Skąd: trójmiasto

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


nie do końca
zmienna $data_w_polu powinna wylądowąć w parametrze value a nie name

poza tym najpierw powinieneś ustawić zmienną a potem wyświetlić pole
a u ciebie jest na odwrót

poprawiony fragment:

  1. <?
  2. if (isset($_SESSION['data'])) $data_w_polu = $_SESSION['data'];
  3. else $data_w_polu = date("Y-m-d");
  4. ?>
  5. <input type="text" name="data_w_polu" value="<? echo $data_w_polu;?>" />


Ten post edytował php programmer 15.12.2005, 12:12:15
Go to the top of the page
+Quote Post
Lonas
post
Post #20





Grupa: Zarejestrowani
Postów: 576
Pomógł: 14
Dołączył: 9.11.2005

Ostrzeżenie: (20%)
X----


czyli jest tak :

  1.  
  2.  
  3. $db = mysql_pconnect("localhost", "root");
  4. mysql_select_db("jakar"); 
  5. if (!$db) {  
  6. print "wystąpił błąd w połączeniu";  
  7. exit;
  8. }
  9.  
  10. if (isset($_SESSION['data'])) $data_w_polu = $_SESSION['data'];
  11. else $data_w_polu = date("Y-m-d");
  12. ?>
  13. <input type="text" name="data_w_polu" value="<? echo $data_w_polu;?>" />
  14.  
  15.  
  16.  
  17.  
  18. <a href="test2.php">utwórz dokument</a>


niestety dalej wywala bład o niezdefiniowanym indexie (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 21:17