Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Formularz nie chce mi dodawac nowych wpisow do bazy
stal-sw
post
Post #1





Grupa: Zarejestrowani
Postów: 176
Pomógł: 0
Dołączył: 27.06.2002
Skąd: Stalowa Wola

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


Ponizej podaje kod i akcje do formularza - dodawanie newsow.
Na podobnym szablonie skrypt bez problemow mi dodaje i usuwa wpisy lecz nie chce dodawac nowych.Przjerzalem kika razy ale nie widze bledu (pojawia sie napis news dodany ale jego nie ma w bazie).
Prosze o pomoc.

I jeszce jedno jak zrobic jeszcze aby skrypt z pola textarea - jak wcisne entera to go "uznal" (podczas odczytu danych przez inny skrypt) zas jak bede edytowal ten wpis to aby w polu formularza nie bylo widac znacznikow <br>.

[php:1:c60ad05f6b]<?php
function formularz() {
echo("<div align="center"><table width="45%"><form action="admin_news.php?op=add_ak" method="post">");
echo "<TABLE BORDER=0 CELLPADDING=0 CELLSPACING=0 ALIGN=CENTER>
<tr><td>Tytuł:<input type=hidden size=35 name=id></td></tr>
<tr><td>Tytuł:<input type=text size=35 name=tytul></td></tr>
<tr><td>Tytuł:<input type=text size=35 name=tresc ></td></tr>
<tr><td>Tytuł:<input type=text size=35 name=tresc2></td></tr>
<tr><td>Tytuł:<input type=text size=35 name=autor></td></tr>
<tr><td>Tytuł:<input type=text size=35 name=mail ></td></tr>
<tr><td>Data:<input type=hidden size=35 name=data ></td></tr>

<tr><td> <INPUT TYPE=submit VALUE=Wy&lij></form>
</TR>
</TABLE>
</FORM>";

}

function add_ak($id, $tytul, $tresc, $tresc2, $autor, $mail, $data) {
global $DBprefix;

$data = date("Y-m-j H:i:s");

$query = "INSERT INTO ".$DBprefix."news (id, tytul, tresc, tresc2, autor, email, data) VALUES ( '','$tytul', '$tresc', '$tresc2', '$autor', '$email','$data')";
$wynik = mysql_query($query);
echo'<center>';
echo'<font color="#FF0000"><b>NEWS został dodany</b></font><br><br>';

}

.......................
switch($op) {
......................
case "add_ak":
add_ak($id, $tytul, $tresc, $tresc2, $autor, $mail, $data);
break;
}
?>[/php:1:c60ad05f6b]
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 6)
itsme
post
Post #2





Grupa: Zarząd
Postów: 1 512
Pomógł: 2
Dołączył: 22.04.2002
Skąd: Koszalin




1. jak dajesz nowy post i masz problem z dodawaniem news-a to wyszukaj w skrypcie kod odpowiedzialny za wstawienie nowego posta
[php:1:a50c0d30d3]<?php
$query = "INSERT INTO ".$DBprefix."news (id, tytul, tresc, tresc2, autor, email, data) VALUES ( '','$tytul', '$tresc', '$tresc2', '$autor', '$email','$data')";
$wynik = mysql_query($query);
echo'<center>';
echo'<font color="#FF0000"><b>NEWS został dodany</b></font><br><br>';
?>[/php:1:a50c0d30d3]
jak widzisz jest to zaledwie pare linijek
2. Jezeli wklejasz kod to ogarniaj go TAGAMI php a nie CODE
3. Rozwiazanie Twojego problemu
[php:1:a50c0d30d3]<?php
$data = date("Y-m-j H:i:s");

$query = "INSERT INTO ".$DBprefix."news (id, tytul, tresc, tresc2, autor, email, data) VALUES ( '','$tytul', '$tresc', '$tresc2', '$autor', '$email','$data')";
$wynik = mysql_query($query);
echo'<center>';
echo'<font color="#FF0000"><b>NEWS został dodany $query</b></font><br><br>';
?>[/php:1:a50c0d30d3]
1. dodałem zmienna do wyświetlenia i dostaniesz zapytanie jakie zostało wyslane do mySQL nastepnie wklei je bezsposrednio do mySQL-a za pomaca phpmyadmin i zobaczysz gdzie jest blad
2. jest cos takiego jak mysql_error(); poszukaj informacji na ten temat
Go to the top of the page
+Quote Post
scanner
post
Post #3





Grupa: Zarząd
Postów: 3 503
Pomógł: 28
Dołączył: 17.10.2002
Skąd: Wrocław




tak jeszcze podpowiem, że w MySQL jest konstrukcja NOW(), dzieki której zamiast pisać [php:1:4bd5273c9e]<?php
data = date("Y-m-j H:i:s");
$query = "INSERT INTO tabela (data) VALUES ('$data')";
?>[/php:1:4bd5273c9e]Piszemy szybciej i czytelniej:[php:1:4bd5273c9e]<?php
$query = "INSERT INTO tabela (data) VALUES (NOW())";
?>[/php:1:4bd5273c9e]
Go to the top of the page
+Quote Post
itsme
post
Post #4





Grupa: Zarząd
Postów: 1 512
Pomógł: 2
Dołączył: 22.04.2002
Skąd: Koszalin




jest tez
CURRENT_DATE - data bez czasu
CURRENT_DATETIME - data z czasem
CURRENT_TIME - czas
wpisujemy to bezsporednio do zapyatnia czasami sie przydaje podczas wykonywania obliczen na datach w mySQL
Go to the top of the page
+Quote Post
darko
post
Post #5





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


Przepraszam za odgrzewanie starego kotleta, ale czy aby napewno jest stała w mysql CURRENT_DATETIME ?

  1. ALTER TABLE `xyz`.`abc` MODIFY COLUMN `date_mod` DATETIME DEFAULT CURRENT_DATETIME;

i..

Cytat
Error executing SQL commands to update table.
MySQL Error Nr. 1064
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'CURRENT_DATETIME' at line 1


? Właśnie szukam rozwiązania tego problemu i póki co wychodzi na to, że jeśli nie chcę po każdej edycji rekordu ręcznie aktualizować datę_modyfikacji, to niestety muszę zamienić typ pola z datetime na timestamp i dodać on update CURRENT_TIMESTAMP (mysql.5.0.51)
Go to the top of the page
+Quote Post
fander
post
Post #6





Grupa: Zarejestrowani
Postów: 231
Pomógł: 22
Dołączył: 6.10.2008

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


Masz błąd:
  1. $query = "INSERT INTO ".$DBprefix."news (id, tytul, tresc, tresc2, autor, email, data) VALUES ( '','$tytul', '$tresc', '$tresc2', '$autor', '$email','$data')";


powinno być
  1. $query = 'INSERT INTO '.$DBprefix.'news (tytul, tresc, tresc2, autor, email, data) VALUES ("'.$tytul.'", "'.$tresc.'", "'.$tresc2.'", "'.$autor.'", "'.$email.'","'.$data.'")';


Poza tym skąd twój skrypt wie co się znajduje w zmiennych $tytul, $tresc, $tresc2, $autor, $email, $data ?, Czy wyżej w sktypcie poprzypisywałeś do tych zmiennych wartości czyli

  1. $tresc = $_POST['tresc']; // itd..
Go to the top of the page
+Quote Post
darko
post
Post #7





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

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


~fander podbiłem temat, żeby się dowiedzieć, jak to jest z CURRENT_DATETIME ? (IMG:style_emoticons/default/dry.gif)
Go to the top of the page
+Quote Post

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: 24.08.2025 - 10:41