Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
Witam, mam pozornie wyglądający "głupi problem". A mianowicie mam taki kod:
Jak odpalam ten skrypt na stronie, pojawia mi się błąd że brakuje '<' w tym miejscu: Kod <form action="edit.php" method="post"> Dla mnie powyższy kod wygląda prawidłowo, ale nie działa to pewnie się mylę. Spójrzcie na niego Dodam jeszcze że jak przed tym kawałkiem kodu Kod <form action="edit.php" method="post"> wstawie '?>' to fragment poniżej tego kodu jest ok, ale tak nie może być, bo wtedy nie bedzie realizacji całego kodu.
Ten post edytował frykar 4.02.2009, 21:33:53 |
|
|
|
![]() |
Post
#2
|
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków |
nie możesz w php używać "gołych" znaczników/tagów html'a, echo'uj je albo skończ wcześniej dając ?>
|
|
|
|
Post
#3
|
|
|
Grupa: Zarejestrowani Postów: 415 Pomógł: 46 Dołączył: 26.05.2007 Skąd: Sandomierz Ostrzeżenie: (0%)
|
echo'uj je albo skończ wcześniej dając ?> kolega może nie wiedzieć co to znaczy echo'uj ... =) wtf?
|
|
|
|
Post
#4
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
Ale nie wiem czy zauważyliście gdzie sie zaczyna kod php i gdzie sie konczy. Zapis który uzyłem faktycznie nie jest najlepszy, ale taki znalazlem w jednej z ksiazek. Zrobilem tak jak napisales ale dalej wyskakuje komunikat o braku znaku '<'. Najlepiej to widac w jakims edytorze PHP.
|
|
|
|
Post
#5
|
|
|
Grupa: Zarejestrowani Postów: 896 Pomógł: 76 Dołączył: 15.11.2003 Skąd: Sosnowiec/Kraków Ostrzeżenie: (0%)
|
Widzimy gdzie się zaczyna php a gdzie kończy. W książce widocznie jest błąd, ten zapis jest całkowicie błędny a nie nienajlepszy.
Manual: wyskakiwanie z HTML'a Ten post edytował Foxx 4.02.2009, 23:53:16 |
|
|
|
Post
#6
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
To może ktoś poprawić tam gdzie mam błąd? Patrzyłem na manula ale poprawki nic nie dały i dalej jest ten błąd czyli brak znaku '<'. A może jest inny sposób aby połączyć sie z plikiem edit.php?? Posty typu "kod jest niepoprawny" nic mi nie dają. Może napisze ktoś coś więcej.
|
|
|
|
Post
#7
|
|
|
Grupa: Zarejestrowani Postów: 207 Pomógł: 44 Dołączył: 14.04.2007 Ostrzeżenie: (0%)
|
Przed
Kod <form... daj Kod echo' a za Kod </form> daj Kod '; I pozmieniaj te value tak jak decha-design napisał. Ten post edytował matixrr 5.02.2009, 18:24:00 |
|
|
|
Post
#8
|
|
|
Grupa: Zarejestrowani Postów: 896 Pomógł: 76 Dołączył: 15.11.2003 Skąd: Sosnowiec/Kraków Ostrzeżenie: (0%)
|
Dałem ci linka do manuala do rozdziału, w którym dowiesz się jak to poprawnie zrobić.
Nikt nie napisał samego "kod jest niepoprawny". Jak poprawki mogły nic nie dać? Może chociaż numery linii, w których jest błąd się zmieniły? Wklej poprawioną wersję i błąd. Ten post edytował Foxx 5.02.2009, 18:26:24 |
|
|
|
Post
#9
|
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 27.01.2009 Ostrzeżenie: (0%)
|
To może ktoś poprawić tam gdzie mam błąd? Patrzyłem na manula ale poprawki nic nie dały i dalej jest ten błąd czyli brak znaku '<'. A może jest inny sposób aby połączyć sie z plikiem edit.php?? Posty typu "kod jest niepoprawny" nic mi nie dają. Może napisze ktoś coś więcej. <?php otwiera kod php ?> zamyka kod php Jeżeli chcesz w miejscu na php umieścić kod HTML, to musisz użyć funkcji echo(), lub print(). O obu traktuje się w manualu (www.php.net). Widzę że przy zmiennych ponownie otwierasz miejsce dla kodu php za pomocą <? - wytłumaczysz mi w jakim celu to robisz, jeśli wcześniej nie został on zamknięty za pomocą ?> ? Kolejna sprawa: Cytat <? <b><b><b><b>echo</b></b></b></b> $id; ?> - co to ma dać?Otwierasz kod php, a następnie używasz znacznika html... to nie ma szans się nie wysypać. Następnie piszesz echo, które - jak się domyślam ma wyświetlić wartość $id. Poczytaj dokładnie jak się używa funkcji w php. Składnia funkcji echo - echo('TEKST'); lub echo($zmienna). Jeśli chcesz wyświetlić znaczniki html, to musisz je wyświetlić jako tekst, bo nie należą one do składni języka php. Ten post edytował Ramadisu 5.02.2009, 18:29:51 |
|
|
|
Post
#10
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
Oto poprawiony kod:
Teraz pojawia sie taki błąd: Parse error: parse error, unexpected $end in "ścieżka" on line 60 (na samym końcu) |
|
|
|
Post
#11
|
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 27.01.2009 Ostrzeżenie: (0%)
|
Czy jesteś pewien że problem leży w tej części skryptu? Mi to wygląda na niedomknięty { }. Skrypt po odpaleniu u mnie na serwerze działa. Co prawda zazwyczaj zamiast ++$i, używam $i++, ale jak sprawdziłem, obie wersje działają.
|
|
|
|
Post
#12
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
Tak miałeś rację brakowało zamknięcia '}' w jednym miejscu. Ale znowu wyskakuje błąd tym razem taki:
Warning: mysql_numrows(): supplied argument is not a valid MySQL result resource in c:\usr\krasnal\www\p1\edycja.php on line 22 |
|
|
|
Post
#13
|
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
Musiałeś zapytanie pokisić. Masz mysql_error" title="Zobacz w manualu PHP" target="_manual, debuguj. (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
|
|
|
|
Post
#14
|
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 27.01.2009 Ostrzeżenie: (0%)
|
Tak miałeś rację brakowało zamknięcia '}' w jednym miejscu. Ale znowu wyskakuje błąd tym razem taki: Warning: mysql_numrows(): supplied argument is not a valid MySQL result resource in c:\usr\krasnal\www\p1\edycja.php on line 22 Prawdopodobnie mysql_query(), na którym użyłeś mysql_num_rows() jest błędnym zapytaniem. Mogłeś też użyć funkcji mysql_num_rows() w niewłaściwy sposób. Wklej fragment kodu w którym używasz tej funkcji + zapytanie do bazy na którym chcesz jej użyć. I tak jak Erix napisał - przy mysql_query('SELECT...') dodaj or die(mysql_error()); |
|
|
|
Post
#15
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
po tym kodzie zaczyna się petla while{} (poprzedni kod). po poprawce kodu otrzymuje taki komunikat: Warning: mysql_num_rows(): supplied argument is not a valid MySQL result resource in c:\usr\krasnal\www\p1\edycja.php on line 22 Zapytanie było puste |
|
|
|
Post
#16
|
|
|
Grupa: Moderatorzy Postów: 15 467 Pomógł: 1451 Dołączył: 25.04.2005 Skąd: Szczebrzeszyn/Rzeszów |
|
|
|
|
Post
#17
|
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków |
w zmiennej $sql masz UPDATE nie SELECTA, jak chcesz zliczyć rekordy? aha i od razu mówię że jest to mało wydajne lepiej zainteresować się COUNT().
|
|
|
|
Post
#18
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
(IMG:http://forum.php.pl/style_emoticons/default/smile.gif) usunąłem $, ale ten sam błąd pozostał (IMG:http://forum.php.pl/style_emoticons/default/sad.gif)
|
|
|
|
Post
#19
|
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 27.01.2009 Ostrzeżenie: (0%)
|
(IMG:http://forum.php.pl/style_emoticons/default/smile.gif) usunąłem $, ale ten sam błąd pozostał (IMG:http://forum.php.pl/style_emoticons/default/sad.gif) Manual, manual, manual i jeszcze raz manual! Cytat mysql_num_rows() zwraca liczbę wierszy w wyniku. Tę funkcję stosuje się tylko do operacji SELECT. Aby pobrać ilość wierszy przetworzonych w operacjach INSERT, UPDATE lub DELETE należy użyć funkcji mysql_affected_rows(). http://pl.php.net/mysql_num_rows Już nie mówię o tym, że : Kod "UPDATE dodaj_serwis SET Nazwa_serwisu='$_POST[Nazwa_serwisu]' LIMIT 1" lepiej byłoby zapisać: Kod 'UPDATE `dodaj_serwis` SET `Nazwa_serwisu` = '.$_POST[Nazwa_serwisu].' LIMIT 1'
Ten post edytował Ramadisu 5.02.2009, 21:29:50 |
|
|
|
Post
#20
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
Teraz to już się wqrw...em. Teraz jak wpisuje w pliku edycja.html Nazwe_serwisu, który chcę aby został edytowany, to wszystkie rekordy zmieniają Nazwe_serwsiu na tą co wpiszę w polu tekstowym:(
|
|
|
|
Post
#21
|
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 27.01.2009 Ostrzeżenie: (0%)
|
Teraz to już się wqrw...em. Teraz jak wpisuje w pliku edycja.html Nazwe_serwisu, który chcę aby został edytowany, to wszystkie rekordy zmieniają Nazwe_serwsiu na tą co wpiszę w polu tekstowym:( Bo właśnie to robi to zapytanie. Jeśli chciałeś dodać nowy rekord: 'INSERT INTO `tabela` (`kolumna1`, `kolumna2`, `kolumna3`) VALUES ("'.$wartosc1.'","'.$wartosc2.'","'.$wartosc3.'")'. Jeśli jednak chciałeś aktualizować rekord w tabeli, to powinieneś użyć WHERE. |
|
|
|
Post
#22
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
Fragment poprawionego kodu:
Teraz efektem jest wyświetlenie się 0. |
|
|
|
Post
#23
|
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 27.01.2009 Ostrzeżenie: (0%)
|
Fragment poprawionego kodu:
Teraz efektem jest wyświetlenie się 0. http://pl.php.net/mysql_affected_rows Tam jest WSZYSTKO. Funkcja przyjmuje ARGUMENT. //piotrooo89 - rzeczywiście, mój błąd Ten post edytował Ramadisu 5.02.2009, 21:49:28 |
|
|
|
Post
#24
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
|
|
|
|
Post
#25
|
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków |
Tam jest WSZYSTKO. Funkcja przyjmuje ARGUMENT. Kod Połączenie MySQL. Jeśli identyfikator połączenia nie zostanie podany, użyte zostanie ostatnie połączenie otwarte przez [url="http://pl.php.net/manual/pl/function.mysql-connect.php"]mysql_connect()[/url]. Jeśli połączenie takie nie zostanie znalezione, funkcja spróbuje nawiązać połączenie tak, jakby wywołana została funkcja [url="http://pl.php.net/manual/pl/function.mysql-connect.php"]mysql_connect()[/url] bez argumentów. Jeśli żadne połączenie nie zostanie znalezione lub nawiązane, wygenerowany zostanie błąd poziomu [b]E_WARNING[/b]. może Ty sobie przeczytaj (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) |
|
|
|
Post
#26
|
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 27.01.2009 Ostrzeżenie: (0%)
|
Czyli zapytanie powinno wyglądać tak:?
Powoli przestaje się orientować w tym co to zapytanie ma robić. Powinno to wyglądać tak: UPDATE `tabela` SET `kolumna` = '.$wartosc.' WHERE `kolumna2` = '.$ktory_wiersz edytowac Czyli np. UPDATE `users` SET `podpis` = '.$_POST['podpis'].' WHERE `user_login` = '.$_SESSION['login'] |
|
|
|
Post
#27
|
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków |
wiec co do tego poczytaj o UPDATE Teraz efektem jest wyświetlenie się 0. masz błąd w UPDATE i dlatego zwraca Ci 0. |
|
|
|
Post
#28
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
No właśnie tyle było postów, że nie wiadomo już o co chodzi (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Przypominam, że chcę aby edytować cały rekord a nie wybraną kolumnę! Czyli tak
- wpisuje w przegladarce Nazwe_serwisu - wciskam edytuj - pojawiają się pola do edycji danych (kolumn) - zmieniam odpowiednie dane - wciskam "Aktualizuj" i gotowe (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) A ten manual to fajny, szczególnie dla tych którzy zaczynają zabawę z php i mysql.(IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
|
Post
#29
|
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków |
No właśnie tyle było postów, że nie wiadomo już o co chodzi (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Przypominam, że chcę aby edytować cały rekord a nie wybraną kolumnę! to musisz podać coś co będzie ten rekord odróżniać od innych. ID, nazwa etc... |
|
|
|
Post
#30
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
No własnie dlatego wpisuje sie Nazwe_serwisu gdyż każda jest inna. Najpierw wpisujemy tą nazwę i powinniśmy edytować wybraną.
|
|
|
|
Post
#31
|
|
|
Newsman Grupa: Moderatorzy Postów: 4 005 Pomógł: 548 Dołączył: 7.04.2008 Skąd: Trzebinia/Kraków |
robiąc tak:
zmieniasz wszystkie nazwy_serwisu na jednakowe, musisz użyć klauzuli WHERE aby edytować TYLKO JEDEN rekord. //EDIT coś prostszego: http://www.w3schools.com/Sql/sql_update.asp Ten post edytował piotrooo89 5.02.2009, 22:07:59 |
|
|
|
Post
#32
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
[quote name='frykar' post='568001' date='5.02.2009, 21:40:41 ']
Nr_seryjny: <input type="text" name="ud_Nr_seryjny" value=" '.$Nr_seryjny.'"> Data_zakupu: <input type="text" name="ud_Data_zakupu" value=" '.$Data_zakupu.'"> Dlugosc_gwarancji: <input type="text" name="ud_Dlugosc_gwarancji" value="'.$Dlugosc_gwarancji.'"> Rodzaj_serwisu: <input type="text" name="ud_Rodzaj_serwisu" value="'.$Rodzaj_serwisu.'"> Data_realizacji: <input type="text" name="ud_Data_realizacji" value="'.$Data_realizacji.'"> Dane_klienta: <input type="text" name="ud_Dane_klienta" value="'.$Dane_klienta.'"> Opis_problemu: <input type="text" name="ud_Opis_problemu" value="'.$Opis_problemu.'"> <input type="Submit" value="Aktualizuj"> </form>'; ++$i; } ?> [/list] Nr_seryjny: <input type="text" name="ud_Nr_seryjny" value=" '.$Nr_seryjny.'"> Data_zakupu: <input type="text" name="ud_Data_zakupu" value=" '.$Data_zakupu.'"> Dlugosc_gwarancji: <input type="text" name="ud_Dlugosc_gwarancji" value="'.$Dlugosc_gwarancji.'"> Rodzaj_serwisu: <input type="text" name="ud_Rodzaj_serwisu" value="'.$Rodzaj_serwisu.'"> Data_realizacji: <input type="text" name="ud_Data_realizacji" value="'.$Data_realizacji.'"> Dane_klienta: <input type="text" name="ud_Dane_klienta" value="'.$Dane_klienta.'"> Opis_problemu: <input type="text" name="ud_Opis_problemu" value="'.$Opis_problemu.'"> <input type="Submit" value="Aktualizuj"> </form>'; ++$i; } ?> [/list] |
|
|
|
Post
#33
|
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 27.01.2009 Ostrzeżenie: (0%)
|
Kod UPDATE `dodaj_serwis` SET `Nazwa_serwisu` = '.$_POST['Nowa_Nazwa_serwisu'].' WHERE `Nazwa_serwisu` = '.$_POST['Stara_Nazwa_serwisu'] Musisz przez zmienną $_POST['Stara_Nazwa_serwisu'] przekazać jak ta nazwa serwisu się aktualnie nazywa, a przez $_POST['nowa...'] - jak się ma nazywać po zmianie. Użyj <input type="hidden" name="Stara_Nazwa_serwisu" value="'.$nazwa.'">. |
|
|
|
Post
#34
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
Qrde z takiego małego problemu zrobił sie taki duży:) Ok zrobiłem troche inaczej. Teraz mam 2 pliki. Jeden wybiera rekord, który będę chciał edytować, drugi zaś słuzy do edycji. Oto one:
edytorek.html
Nr_seryjny: <input type="text" name="ud_Nr_seryjny" value=" '.$Nr_seryjny.'"> Data_zakupu: <input type="text" name="ud_Data_zakupu" value=" '.$Data_zakupu.'"> Dlugosc_gwarancji: <input type="text" name="ud_Dlugosc_gwarancji" value="'.$Dlugosc_gwarancji.'"> Rodzaj_serwisu: <input type="text" name="ud_Rodzaj_serwisu" value="'.$Rodzaj_serwisu.'"> Data_realizacji: <input type="text" name="ud_Data_realizacji" value="'.$Data_realizacji.'"> Dane_klienta: <input type="text" name="ud_Dane_klienta" value="'.$Dane_klienta.'"> Opis_problemu: <input type="text" name="ud_Opis_problemu" value="'.$Opis_problemu.'"> <input type="Submit" value="Aktualizuj"> </form>'; ++$i; } ?> [/list] [PHP] ]; $ud_Nr_seryjny=$_POST['ud_Nr_seryjny']; $ud_Data_zakupu=$_POST['ud_Data_zakupu']; $ud_Dlugosc_gwarancji=$_POST['ud_Dlugosc_gwarancji']; $ud_Rodzaj_serwisu=$_POST['ud_Rodzaj_serwisu']; $ud_Data_realizacji=$_POST['ud_Data_realizacji']; $ud_Dane_klienta=$_POST['ud_Dane_klienta']; $ud_Opis_problemu=$_POST['ud_Opis_problemu']; $username="root"; $password="krasnal"; $database="rma"; $query="UPDATE contacts SET Nazwa_serwisu='$ud_Nazwa_serwisu', Telefon='$ud_Telefon', Nr_seryjny='$ud_Nr_seryjny', Data_zakupu='$ud_Data_zakupu', Dlugosc_gwarancji='$ud_Dlugosc_gwarancji', Rodzaj_serwisu='$ud_Rodzaj_serwisu', Data_realizacji='$ud_Data_realizacji', Dane_klienta='$ud_Dane_klienta', Opis_problemu='$ud_Opis_problemu' WHERE id='$ud_id'"; ?> <HTML> <HEAD> <TITLE>Aktualizacja danych</TITLE> </HEAD> <BODY> <P><strong>Aktualizacja danych</strong>:</P> <P><a href="menu.html">Powrot do menu</a></P> </BODY> </HTML> [/list] Nr_seryjny: <input type="text" name="ud_Nr_seryjny" value=" '.$Nr_seryjny.'"> Data_zakupu: <input type="text" name="ud_Data_zakupu" value=" '.$Data_zakupu.'"> Dlugosc_gwarancji: <input type="text" name="ud_Dlugosc_gwarancji" value="'.$Dlugosc_gwarancji.'"> Rodzaj_serwisu: <input type="text" name="ud_Rodzaj_serwisu" value="'.$Rodzaj_serwisu.'"> Data_realizacji: <input type="text" name="ud_Data_realizacji" value="'.$Data_realizacji.'"> Dane_klienta: <input type="text" name="ud_Dane_klienta" value="'.$Dane_klienta.'"> Opis_problemu: <input type="text" name="ud_Opis_problemu" value="'.$Opis_problemu.'"> <input type="Submit" value="Aktualizuj"> </form>'; ++$i; } ?> [/list] [PHP] [topic=0]elefon']; $ud_Nr_seryjny=$_POST['ud_Nr_seryjny']; $ud_Data_zakupu=$_POST['ud_Data_zakupu']; $ud_Dlugosc_gwarancji=$_POST['ud_Dlugosc_gwarancji']; $ud_Rodzaj_serwisu=$_POST['ud_Rodzaj_serwisu']; $ud_Data_realizacji=$_POST['ud_Data_realizacji']; $ud_Dane_klienta=$_POST['ud_Dane_klienta']; $ud_Opis_problemu=$_POST['ud_Opis_problemu']; $username="root"; $password="krasnal"; $database="rma"; $query="UPDATE contacts SET Nazwa_serwisu='$ud_Nazwa_serwisu', Telefon='$ud_Telefon', Nr_seryjny='$ud_Nr_seryjny', Data_zakupu='$ud_Data_zakupu', Dlugosc_gwarancji='$ud_Dlugosc_gwarancji', Rodzaj_serwisu='$ud_Rodzaj_serwisu', Data_realizacji='$ud_Data_realizacji', Dane_klienta='$ud_Dane_klienta', Opis_problemu='$ud_Opis_problemu' WHERE id='$ud_id'"; ?> <HTML> <HEAD> <TITLE>Aktualizacja danych</TITLE> </HEAD> <BODY> <P><strong>Aktualizacja danych</strong>:</P> <P><a href="menu.html">Powrot do menu</a></P> </BODY> </HTML> [/list] [PHP] elefon']; $ud_Nr_seryjny=$_POST['ud_Nr_seryjny']; $ud_Data_zakupu=$_POST['ud_Data_zakupu']; $ud_Dlugosc_gwarancji=$_POST['ud_Dlugosc_gwarancji']; $ud_Rodzaj_serwisu=$_POST['ud_Rodzaj_serwisu']; $ud_Data_realizacji=$_POST['ud_Data_realizacji']; $ud_Dane_klienta=$_POST['ud_Dane_klienta']; $ud_Opis_problemu=$_POST['ud_Opis_problemu']; $username="root"; $password="krasnal"; $database="rma"; $query="UPDATE contacts SET Nazwa_serwisu='$ud_Nazwa_serwisu', Telefon='$ud_Telefon', Nr_seryjny='$ud_Nr_seryjny', Data_zakupu='$ud_Data_zakupu', Dlugosc_gwarancji='$ud_Dlugosc_gwarancji', Rodzaj_serwisu='$ud_Rodzaj_serwisu', Data_realizacji='$ud_Data_realizacji', Dane_klienta='$ud_Dane_klienta', Opis_problemu='$ud_Opis_problemu' WHERE id='$ud_id'"; ?> <HTML> <HEAD> <TITLE>Aktualizacja danych</TITLE> </HEAD> <BODY> <P><strong>Aktualizacja danych</strong>:</P> <P><a href="menu.html">Powrot do menu</a></P> </BODY> </HTML> [/list] Nr_seryjny: <input type="text" name="ud_Nr_seryjny" value=" '.$Nr_seryjny.'"> Data_zakupu: <input type="text" name="ud_Data_zakupu" value=" '.$Data_zakupu.'"> Dlugosc_gwarancji: <input type="text" name="ud_Dlugosc_gwarancji" value="'.$Dlugosc_gwarancji.'"> Rodzaj_serwisu: <input type="text" name="ud_Rodzaj_serwisu" value="'.$Rodzaj_serwisu.'"> Data_realizacji: <input type="text" name="ud_Data_realizacji" value="'.$Data_realizacji.'"> Dane_klienta: <input type="text" name="ud_Dane_klienta" value="'.$Dane_klienta.'"> Opis_problemu: <input type="text" name="ud_Opis_problemu" value="'.$Opis_problemu.'"> <input type="Submit" value="Aktualizuj"> </form>'; ++$i; } ?> [/list] [PHP] [topic=0]elefon']; $ud_Nr_seryjny=$_POST['ud_Nr_seryjny']; $ud_Data_zakupu=$_POST['ud_Data_zakupu']; $ud_Dlugosc_gwarancji=$_POST['ud_Dlugosc_gwarancji']; $ud_Rodzaj_serwisu=$_POST['ud_Rodzaj_serwisu']; $ud_Data_realizacji=$_POST['ud_Data_realizacji']; $ud_Dane_klienta=$_POST['ud_Dane_klienta']; $ud_Opis_problemu=$_POST['ud_Opis_problemu']; $username="root"; $password="krasnal"; $database="rma"; $query="UPDATE contacts SET Nazwa_serwisu='$ud_Nazwa_serwisu', Telefon='$ud_Telefon', Nr_seryjny='$ud_Nr_seryjny', Data_zakupu='$ud_Data_zakupu', Dlugosc_gwarancji='$ud_Dlugosc_gwarancji', Rodzaj_serwisu='$ud_Rodzaj_serwisu', Data_realizacji='$ud_Data_realizacji', Dane_klienta='$ud_Dane_klienta', Opis_problemu='$ud_Opis_problemu' WHERE id='$ud_id'"; ?> <HTML> <HEAD> <TITLE>Aktualizacja danych</TITLE> </HEAD> <BODY> <P><strong>Aktualizacja danych</strong>:</P> <P><a href="menu.html">Powrot do menu</a></P> </BODY> </HTML> [/list] Wybierany jest rekord przez 'id' Po odpaleniu pierwszego pojawia sie cos takiego: Nazwa_serwisu: Telefon: Nr_seryjny: Data_zakupu: Dlugosc_gwarancji: Rodzaj_serwisu: Data_realizacji: Dane_klienta: Opis_problemu: '; ++$i; } ?> nie widać dokładnie ale po nazwach kolumn są pola tekstowe z Kod '.$nazwa.' Ktoś ma jakiś pomysł? Ten post edytował frykar 6.02.2009, 00:03:44 |
|
|
|
Post
#35
|
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 27.01.2009 Ostrzeżenie: (0%)
|
Jak to powinno wyglądać:
Najpierw wybierasz który rekord chcesz edytować - możesz to zrobić przykładowo za pomocą formularza z selectem. Ten form powinien przesyłać poprzez wartość <input type="hidden" name="id" value="'.$row['id'].'"> id rekordu który będziesz edytował. We właściwym formularzu dajesz pola jakie chcesz, najlepiej jeszcze robisz mysql_query('SELECT * FROM `tabela` WHERE `id` = '.$_POST['id']); i uzupełniasz ten formularz wartościami pobranymi z bazy danych (<input type="text" name="uzytkownik" value="'.$row['uzytkownik'].'"> - oczywiście wcześniej musisz zastosować mysql_fetch_array()(IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) , i dodajesz ZNOWU dodatkowa wartosc <input type="hidden" name="id" value="'.$_POST['id'].'">. Na kolejnej stronie (ten która wykonuje zapytanie do bazy UPDATE...SET), robisz wtedy już tylko mysql_query('UPDATE `tabela` SET `kolumna1` = '.$_POST['wartosc1'.', `kolumna2` = '.$_POST['wartosc2'].' WHERE `id` = '.$_POST['id']); |
|
|
|
Post
#36
|
|
|
Grupa: Zarejestrowani Postów: 29 Pomógł: 0 Dołączył: 29.01.2009 Ostrzeżenie: (10%)
|
edytorek.php
Nr_seryjny: <input type="text" name="ud_Nr_seryjny" value=" '.$row[Nr_seryjny].'"> Data_zakupu: <input type="text" name="ud_Data_zakupu" value=" '.$row[Data_zakupu].'"> Dlugosc_gwarancji: <input type="text" name="ud_Dlugosc_gwarancji" value="'.$row[Dlugosc_gwarancji].'"> Rodzaj_serwisu: <input type="text" name="ud_Rodzaj_serwisu" value="'.$row[Rodzaj_serwisu].'"> Data_realizacji: <input type="text" name="ud_Data_realizacji" value="'.$row[Data_realizacji].'"> Dane_klienta: <input type="text" name="ud_Dane_klienta" value="'.$row[Dane_klienta].'"> Opis_problemu: <input type="text" name="ud_Opis_problemu" value="'.$row[Opis_problemu].'"> <input type="Submit" value="Aktualizuj"> </form>'; ++$i; } ?> [/list] [PHP] ]; $ud_Nr_seryjny=$_POST['ud_Nr_seryjny']; $ud_Data_zakupu=$_POST['ud_Data_zakupu']; $ud_Dlugosc_gwarancji=$_POST['ud_Dlugosc_gwarancji']; $ud_Rodzaj_serwisu=$_POST['ud_Rodzaj_serwisu']; $ud_Data_realizacji=$_POST['ud_Data_realizacji']; $ud_Dane_klienta=$_POST['ud_Dane_klienta']; $ud_Opis_problemu=$_POST['ud_Opis_problemu']; $username="root"; $password="krasnal"; $database="rma"; $query="UPDATE 'dodaj_serwis' SET 'Nazwa_serwisu' = '.$_POST['wartosc1'].', 'Telefon' = '.$_POST['wartosc2'].', 'Nr_seryjny' = '.$_POST['wartosc3'].' , 'Data_zakupu' = '.$_POST['wartosc4'].' , 'Dlugosc_gwarancji' = '.$_POST['wartosc5].' , 'Rodzaj_serwisu' = '.$_POST['wartosc6'].' , 'Data_realizacji' = '.$_POST['wartosc7'].' , 'Dane_klienta' = '.$_POST['wartosc8'].' , 'Opis_problemu' = '.$_POST['wartosc9'].' WHERE 'id' = '.$_POST['id'].' "; ?> <HTML> <HEAD> <TITLE>Aktualizacja danych</TITLE> </HEAD> <BODY> <P><strong>Aktualizacja danych</strong>:</P> <P><a href="menu.html">Powrot do menu</a></P> </BODY> </HTML> [/list] Nr_seryjny: <input type="text" name="ud_Nr_seryjny" value=" '.$row[Nr_seryjny].'"> Data_zakupu: <input type="text" name="ud_Data_zakupu" value=" '.$row[Data_zakupu].'"> Dlugosc_gwarancji: <input type="text" name="ud_Dlugosc_gwarancji" value="'.$row[Dlugosc_gwarancji].'"> Rodzaj_serwisu: <input type="text" name="ud_Rodzaj_serwisu" value="'.$row[Rodzaj_serwisu].'"> Data_realizacji: <input type="text" name="ud_Data_realizacji" value="'.$row[Data_realizacji].'"> Dane_klienta: <input type="text" name="ud_Dane_klienta" value="'.$row[Dane_klienta].'"> Opis_problemu: <input type="text" name="ud_Opis_problemu" value="'.$row[Opis_problemu].'"> <input type="Submit" value="Aktualizuj"> </form>'; ++$i; } ?> [/list] [PHP] [topic=0]elefon']; $ud_Nr_seryjny=$_POST['ud_Nr_seryjny']; $ud_Data_zakupu=$_POST['ud_Data_zakupu']; $ud_Dlugosc_gwarancji=$_POST['ud_Dlugosc_gwarancji']; $ud_Rodzaj_serwisu=$_POST['ud_Rodzaj_serwisu']; $ud_Data_realizacji=$_POST['ud_Data_realizacji']; $ud_Dane_klienta=$_POST['ud_Dane_klienta']; $ud_Opis_problemu=$_POST['ud_Opis_problemu']; $username="root"; $password="krasnal"; $database="rma"; $query="UPDATE 'dodaj_serwis' SET 'Nazwa_serwisu' = '.$_POST['wartosc1'].', 'Telefon' = '.$_POST['wartosc2'].', 'Nr_seryjny' = '.$_POST['wartosc3'].' , 'Data_zakupu' = '.$_POST['wartosc4'].' , 'Dlugosc_gwarancji' = '.$_POST['wartosc5].' , 'Rodzaj_serwisu' = '.$_POST['wartosc6'].' , 'Data_realizacji' = '.$_POST['wartosc7'].' , 'Dane_klienta' = '.$_POST['wartosc8'].' , 'Opis_problemu' = '.$_POST['wartosc9'].' WHERE 'id' = '.$_POST['id'].' "; ?> <HTML> <HEAD> <TITLE>Aktualizacja danych</TITLE> </HEAD> <BODY> <P><strong>Aktualizacja danych</strong>:</P> <P><a href="menu.html">Powrot do menu</a></P> </BODY> </HTML> [/list] [PHP] elefon']; $ud_Nr_seryjny=$_POST['ud_Nr_seryjny']; $ud_Data_zakupu=$_POST['ud_Data_zakupu']; $ud_Dlugosc_gwarancji=$_POST['ud_Dlugosc_gwarancji']; $ud_Rodzaj_serwisu=$_POST['ud_Rodzaj_serwisu']; $ud_Data_realizacji=$_POST['ud_Data_realizacji']; $ud_Dane_klienta=$_POST['ud_Dane_klienta']; $ud_Opis_problemu=$_POST['ud_Opis_problemu']; $username="root"; $password="krasnal"; $database="rma"; $query="UPDATE 'dodaj_serwis' SET 'Nazwa_serwisu' = '.$_POST['wartosc1'].', 'Telefon' = '.$_POST['wartosc2'].', 'Nr_seryjny' = '.$_POST['wartosc3'].' , 'Data_zakupu' = '.$_POST['wartosc4'].' , 'Dlugosc_gwarancji' = '.$_POST['wartosc5].' , 'Rodzaj_serwisu' = '.$_POST['wartosc6'].' , 'Data_realizacji' = '.$_POST['wartosc7'].' , 'Dane_klienta' = '.$_POST['wartosc8'].' , 'Opis_problemu' = '.$_POST['wartosc9'].' WHERE 'id' = '.$_POST['id'].' "; ?> <HTML> <HEAD> <TITLE>Aktualizacja danych</TITLE> </HEAD> <BODY> <P><strong>Aktualizacja danych</strong>:</P> <P><a href="menu.html">Powrot do menu</a></P> </BODY> </HTML> [/list] Nr_seryjny: <input type="text" name="ud_Nr_seryjny" value=" '.$row[Nr_seryjny].'"> Data_zakupu: <input type="text" name="ud_Data_zakupu" value=" '.$row[Data_zakupu].'"> Dlugosc_gwarancji: <input type="text" name="ud_Dlugosc_gwarancji" value="'.$row[Dlugosc_gwarancji].'"> Rodzaj_serwisu: <input type="text" name="ud_Rodzaj_serwisu" value="'.$row[Rodzaj_serwisu].'"> Data_realizacji: <input type="text" name="ud_Data_realizacji" value="'.$row[Data_realizacji].'"> Dane_klienta: <input type="text" name="ud_Dane_klienta" value="'.$row[Dane_klienta].'"> Opis_problemu: <input type="text" name="ud_Opis_problemu" value="'.$row[Opis_problemu].'"> <input type="Submit" value="Aktualizuj"> </form>'; ++$i; } ?> [/list] [PHP] [topic=0]elefon']; $ud_Nr_seryjny=$_POST['ud_Nr_seryjny']; $ud_Data_zakupu=$_POST['ud_Data_zakupu']; $ud_Dlugosc_gwarancji=$_POST['ud_Dlugosc_gwarancji']; $ud_Rodzaj_serwisu=$_POST['ud_Rodzaj_serwisu']; $ud_Data_realizacji=$_POST['ud_Data_realizacji']; $ud_Dane_klienta=$_POST['ud_Dane_klienta']; $ud_Opis_problemu=$_POST['ud_Opis_problemu']; $username="root"; $password="krasnal"; $database="rma"; $query="UPDATE 'dodaj_serwis' SET 'Nazwa_serwisu' = '.$_POST['wartosc1'].', 'Telefon' = '.$_POST['wartosc2'].', 'Nr_seryjny' = '.$_POST['wartosc3'].' , 'Data_zakupu' = '.$_POST['wartosc4'].' , 'Dlugosc_gwarancji' = '.$_POST['wartosc5].' , 'Rodzaj_serwisu' = '.$_POST['wartosc6'].' , 'Data_realizacji' = '.$_POST['wartosc7'].' , 'Dane_klienta' = '.$_POST['wartosc8'].' , 'Opis_problemu' = '.$_POST['wartosc9'].' WHERE 'id' = '.$_POST['id'].' "; ?> <HTML> <HEAD> <TITLE>Aktualizacja danych</TITLE> </HEAD> <BODY> <P><strong>Aktualizacja danych</strong>:</P> <P><a href="menu.html">Powrot do menu</a></P> </BODY> </HTML> [/list] Tak wyglada po poprawkach. O czymś zapomniałem? Po kompilacji wyskakuje taki błąd: Parse error: parse error, unexpected T_ENCAPSED_AND_WHITESPACE, expecting T_STRING or T_VARIABLE or T_NUM_STRING in C:\usr\krasnal\www\p1\edytorek.html on line 8 To samo pojawia się w dwóch plikach tam gdzie jest $query W pliku edytorek.php poprawilem i juz nie ma tego błędu(zamiast "" musialobyć '')Teraz pojawia się błąd: Cos jest nie tak z " w linii 1- ale ta linii to poczatek kodu. W edit. php to nie pomogło. Czy już zapomnieliście o moim problemie?? Dalej nikt nic nie napisał, a potrzebuje to jak najszybciej poprawić. Aha, może jest inny sposób, żeby np. dane co mam w swojej bazie (z mysql'a) wczytać do formularza, w którym wprowadzam nowe rekordy i tam wówczas poprawić interesujące mnie dane?? Ten post edytował frykar 6.02.2009, 20:10:34 |
|
|
|
Post
#37
|
|
|
Grupa: Zarejestrowani Postów: 286 Pomógł: 34 Dołączył: 4.09.2008 Skąd: Wrocław Ostrzeżenie: (0%)
|
;D
a wyjaśni mi gdzie w "edytorek.php" masz wartość 1, 2, 3 ... 8, 9 (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Bo jestem ciekaw co chcesz "aktualizować" skoro tam nie ma żadnych wartości ... Formularz musi być powiązany z plikiem, który wykonuje zapytanie (czyt. aktualizacje) czyli w formularzu musisz wysłać odpowiednie "wartości" do pliku z zapytaniem (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
|
Post
#38
|
|
|
Grupa: Zarejestrowani Postów: 21 Pomógł: 1 Dołączył: 27.01.2009 Ostrzeżenie: (0%)
|
Kod $query=" SELECT * FROM dodaj_serwis WHERE id = '.$_POST['id'].'"; Różne są style pisania, ale wydaje mi się że coś przekombinowujesz z apostrofami. Spróbuj: Kod $query=' SELECT * FROM dodaj_serwis WHERE id = '.$_POST['id'];
|
|
|
|
![]() ![]() |
|
Aktualny czas: 26.12.2025 - 05:08 |