kamilk00
16.12.2003, 20:24:13
witajcie mam sprawe mogli byscie mi powiedziec jak wyslac z formularza za pomoca php dane do mysql? mam problem
informacje:
baza-news
tabela-news
pola w tabeli:
heading, body, author, author_email, date
z gory WIELKIE DZIEKI!
Foxx
16.12.2003, 20:29:29
Poczytaj z o funkcjach myslq w php w manualu
muisz:
1. połączyć się z bazą -> mysql_connect()
2.wybrać bazę -> mysql_select_db ()
3 wykonać zapytanie do bazy -> mysql_query()
kicaj
16.12.2003, 22:43:14
wklej do [manual:6e4152e06f]mysql_query()[/manual:6e4152e06f]:
[sql:1:6e4152e06f]INSERT INTO news SET heading=".$heading.", body=".$body.", author=".$author.", author_email=".$author_email.", data=".$data."[/sql:1:6e4152e06f]
Gdzie wartosci pol w formularzu maja w tym przypadku taka sama nazwe jak pola w tabeli MySQL'a
kamilk00
17.12.2003, 18:36:19
a to dalej nie dziala :cry:
Foxx
17.12.2003, 18:37:14
No to pokaż jak zrobiłeś
track
17.12.2003, 18:50:08
moze twoja baza nie dziala i wszystko sie wali....
kamilk00
17.12.2003, 22:51:02
mozliwe ze nie dziala ale czemu?
skonfigurowane wszystko jest dobrze
Foxx
17.12.2003, 22:53:45
Człowieku - pokaż jakiś kod...
W tej chwili można Ci powiedzieć najwyżej "coś jest nie tak..."
track
18.12.2003, 00:03:51
nie chce sie wymadrzac, ale zastanawia mnie dlaczego niektorzy urzytkownicy powtarzaja to co napisal poprzednik. Tutaj chodzi mi oto, ze 2 osoby mowia to samo: "pokaz kod jaki masz"

to jest takie moje male spostrzezenie...
Pozdrawiam...
spenalzo
18.12.2003, 00:09:50
Bo mr kicaj_ pomimo upomnień na PW dalej leci na ilość postów. Dlatego powtarzam to co na PW napisałem, że zaczynam sprzątać po nim. Jeżeli uważasz, że niesłusznie, napisz do Setha.
kamilk00
18.12.2003, 16:01:05
chcecie kodu macie kodu:
dodaj.php
[php:1:dd8d2afc28]<?php
$db = mysql_connect("localhost", "root");
mysql_select_db("news", $db);
if($pyt == 'dodaj') {
$sql = "INSERT INTO news SET heading='.$heading.', body='.$body.', author='.$author.', author_email='.$author_email.', data='.$data.')";
mysql_query($sql);
}
?>[/php:1:dd8d2afc28]
index.php
[php:1:dd8d2afc28]<html>
<head>
<title>
System newsow na podstawie bazy danych
</title>
</head>
<body>
<?php
/*ten program wpisuje wiadomość do bazy danych*/
if(isset($submit)):
$db = mysql_connect("localhost", "root");
mysql_select_db("news", $db);
$date = date("Y-m-d");
print("<h2>Dane zostały wpisane</h2>n");
print("<b>Poniżej możesz dodać inną wiadomość</b>n");
endif;
?>
<p><h3>Wpisz swoją wiadomość do bazy danych</h3>
<form action="dodaj.php" method="post">
<input type=hidden name=dodaj>
Nazwisko:<br><input type="text" name="auth"><p>
E-mail:<br> <input type="text" name="auth_email"><p>
Nagłówek:<br><input type="text" name="heading"><p>
Wiadomość:<br>
<textarea cols=40 rows=20 name="body" wrap="virtual">
</textarea><p>
<input type="submit" name="submit" value=Wyślij wiadomość!">
</form>
</body>
</html> [/php:1:dd8d2afc28]
Foxx
18.12.2003, 16:11:03
jeżeli nie używasz hasła to powinno być
[php:1:bd45a93f6f]<?php
$db = mysql_connect("localhost", "root", "");
?>[/php:1:bd45a93f6f]
Kiedy wybierasz bazę danych to podajesz tylko jej nazwę, z tego co wiem
[php:1:bd45a93f6f]<?
//albo:
mysql_select_db("news");
//albo:
mysql_select_db($db);
?>[/php:1:bd45a93f6f]
Zmienne w zapytaniu sql powinny być tak wpisane:
[php:1:bd45a93f6f]<?
$sql = "INSERT INTO news SET heading='".$heading."', body='".$body."', author='".$author."', author_email='".$author_email."', data='".$data."')";
?>[/php:1:bd45a93f6f]
Nie jestem aż tak dobry żeby z pewnością stwierdzić że czegoś takiego nie ma w gdzieś w php, ale nigdy takiego czegoś nie widziałem:
[php:1:bd45a93f6f]<?
endif;
?>[/php:1:bd45a93f6f]
pętla "if" wygląda raczej tak:
[php:1:bd45a93f6f]<?
if(warunek){
//działanie
}
?>[/php:1:bd45a93f6f]
PS. Twój post z forum "skrypty" który dałeś 10 min. temu brzmi mniej więcej "mam coś zepsute, dalej nie działa" - wiesz co o tym myślę?
track
18.12.2003, 16:18:38
Cytat
witajcie mam sprawe mogli byscie mi powiedziec jak wyslac z formularza za pomoca php dane do mysql? mam problem
informacje:
baza-news
tabela-news
pola w tabeli:
heading, body, author, author_email, date
z gory WIELKIE DZIEKI!
Ja proponuje jakis kurs MySql... przykladowy znajdziesz na stronie
http://php.webhelp.pl/kursy/mysql/index.php?roz=php
Tam sa opisane wszystkie podstawowe funkcje MySql, bo te bledy ktore wytknal ci moj poprzedni sa czysto techniczne i wynikaja z nieznajomosci podstaw. Takie przynajmniej jest moje zdanie.
I zeby nie bylo, to napisze, ze moja wiedza jest mala jesli chodzi o MySql, ale podstawy jakies mam... napisalem to tak na wypadek jakby ktos napisal, ze sie wymadrzam
Pozdrawiam...
kamilk00
18.12.2003, 16:49:24
spokojnie znam podstawowe funkcje mysql! chodzi tylko o to ze to nie dziala!
Foxx
18.12.2003, 16:53:04
Przeczytałeś co Ci napisałem :?:
spenalzo
18.12.2003, 17:57:16
Cytat
Nie jestem aż tak dobry żeby z pewnością stwierdzić że czegoś takiego nie ma w gdzieś w php, ale nigdy takiego czegoś nie widziałem:
[php:1:26dcc39350]<?
endif;
?>[/php:1:26dcc39350]
To byłą poprawna struktura - zobacz to:
http://pl.php.net/manual/pl/control-struct...tive-syntax.php
Foxx
18.12.2003, 18:03:50
Dzięki, tak coś właśnie czułem :-k ...
dobrze że nie byłem stanowczy
kamilk00
18.12.2003, 18:07:18
tak przeczytalem i testuje
track
18.12.2003, 20:16:09
Cytat
spokojnie znam podstawowe funkcje mysql! chodzi tylko o to ze to nie dziala!
ok, ale to co poprawil FOXX to podstawy przynajmniej jak dla mnie...
Pozdrawiam...
ja mam takie sugestie:
1. po pierwsze zmienne nazwy autora się nie zgadzają (auth -> author )
2. w formie musisz walnąć
Kod
<input type=hidden name=pyt value=dodaj>
zamiast:
Kod
<input type=hidden name=dodaj>
w szczególności zastosuj się do drugiego punktu bo jak na razie to przekazywałeś pustą zmienną $dodaj o wartości 'null' a w pliku dodaj.php pytasz się o zmienną $pyt !
po zastosowaniui się do tego na 100% zapisze ci dane
a i jeszcze data! ty musisz ją walnąć w pliku dodaj.php bo jak walisz ją w index to on już przecież dodał wcześniej dane ;]
Pozdro, Ive
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.