Sharapova
(Maciej Szankin)
2 Wrzesień 2007 17:33
#1
Wygląda wszystko OK, ale nie chce wysłac do bazy danych.
$con = mysql_connect("localhost","uzytkownik","haslo");
if (!$con)
{
die('Nie można się połączyć: ' . mysql_error());
}
mysql_query('SET CHARSET latin2');
mysql_select_db("urodziny", $con);
mysql_query("INSERT INTO urodziny (osoba, dzien, miesiac, rok, gg)
VALUES ($osoba, $dzien, $miesiac, $rok, $gg)");
mysql_close($con);
Slawlos
(Smale)
2 Wrzesień 2007 18:00
#2
A jaki jest błąd ?
sprobuj wpisać tak:
‘$osoba’, ‘$dzien’, ‘$miesiac’, ‘$rok’, ‘$gg’ …
Sharapova
(Maciej Szankin)
2 Wrzesień 2007 18:34
#3
Nie ma żadnego błędu.
‘$x’ też nie działa.
Baza na pewno sprawna - wyświetlam informacji z niej zaczerpnięte i wszystko chodzi ok, tylko coś zapisać z poziomu php nie chce.
Umik
(Panda2a)
2 Wrzesień 2007 18:53
#4
$sql = mysql_connect('mojserwer.pl', 'foo', 'off')
or die('Nie mogę połączyć się z bazą danych: '.mysql_error());
mysql_select_db('nazwa_bazy')
or die('Nie mogę wybrać bazy: '.mysql_error());
if (!$zaptanie=@mysql_query("tresc zapytania")) /* Sprawdza czy wykonanie powiodło się */
echo 'Bład zapytania MySQL, odpowiedź serwera: '.mysql_error(); /* Drukuje błąd na stronie */
else /* Jeśli błąd nie wystąpił kontynuuje działanie programu */
{
/* dalsze dzialanie skryptu */
}
Zlikwiduj cudzysłów w połączeniu.
('localhost','uzytkownik','haslo');
Sharapova
(Maciej Szankin)
2 Wrzesień 2007 19:17
#5
Umik
Twój kod zwraca mi
Bład zapytania MySQL, odpowiedź serwera: Out of range value adjusted for column 'gg' at row 1
kolumna gg na MySQL: int(11) Null: Yes.
Mi to nic nie mówi.
(w formularzu w to polę wpisuję numer gg)
Umik
(Panda2a)
3 Wrzesień 2007 06:12
#6
dla kolumny ‘gg’ zmień typ na VARCHAR oraz DłYGOść/WARTOści na 10
Sharapova
(Maciej Szankin)
3 Wrzesień 2007 08:46
#7
Nic to nie dało, ale już mniej więcej wszystko jest ok - wywaliłem kolumnę GG - nie jest mi do końca potrzebna.
Teraz wracam do problemu z polskimi literkami.
Czy wpiszę dane przez konsolę, czy przez formularz przy wyświetlaniu zawsze polskie znaki zamieniają się na ‘?’
Próbowałem dodawać tuż po połączeniu
mysql_query(‘SET NAMES latin2’);
oraz
mysql_query(‘SET CHARSET latin2’);
ale w niczym nie pomogło.
Umik
(Panda2a)
3 Wrzesień 2007 09:38
#8
Co zwraca w phpmyadmin ?
SHOW VARIABLES LIKE "character_set%";
Sharapova
(Maciej Szankin)
3 Wrzesień 2007 17:11
#9
character_set_client utf8
character_set_connection utf8
character_set_database latin1
character_set_results utf8
character_set_server latin1
character_set_system utf8
character_sets_dir /usr/share/mysql/charsets/
mogę gdzieś to edytować? W MySQL i phpmyadmin jestem zielony
Złączono Posta : 03.09.2007 (Pon) 19:39
Rozwiązałem. Wielkie dzięki za pomoc.
Wystarczyło wejść w operacje i zmienić na latin2_general_ci :roll: