Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: wprowadzanie danych do mysql
Forum PHP.pl > Forum > PHP
soczek
tak wyglada skrypcik zapisujacy dane w bazie:

[php:1:0be3d9902a]$user_drf = date(Y.m.d);
$user_iprf = $REMOTE_ADDR;
if(IsSet($user_subf))
{
$user_subf = 1;
}
else
{
$user_subf = 0;
}

$dane = "INSERT INTO users ( id, user_name, user_pass, user_mail, user_dr, user_dol, user_doltmp, user_ipr, user_ipol, user_iptmp, ban, user_stat, user_sub)
VALUES (2, '$user_namef', '$user_passf', '$user_mailf', '$user_drf', '$user_iprf')";
$wykonaj_dane = mysql_query($dane);
[/php:1:0be3d9902a]

tak kod tworzacy tabele:
[sql:1:0be3d9902a]
CREATE TABLE `users` (
`id` smallint(3) NOT NULL auto_increment,
`user_name` varchar(16) NOT NULL default '',
`user_pass` varchar(32) NOT NULL default '',
`user_mail` varchar(32) NOT NULL default '',
`user_dr` varchar(10) NOT NULL default '',
`user_dol` varchar(10) NOT NULL default '0',
`user_doltmp` varchar(10) NOT NULL default '0',
`user_ipr` varchar(15) NOT NULL default '',
`user_ipol` varchar(15) NOT NULL default '0',
`user_iptmp` varchar(15) NOT NULL default '0',
`ban` smallint(1) NOT NULL default '0',
`user_stat` smallint(1) NOT NULL default '0',
`user_sub` smallint(1) NOT NULL default '0',
PRIMARY KEY (`id`)
) TYPE=MyISAM COMMENT='uzytkownicy' AUTO_INCREMENT=5 ;

[/sql:1:0be3d9902a]

wysypuje sie wlasnie na to ze w momencie wprowadzania danych do tabeli, prosze o pomoc smile.gif


----------------------
[zmoderowane]
Kod php proszę umieszczać w znacznikach [php], a kod SQL w znacznikach [sql].
BzikOS
zombie
Co to znaczy "wysypuje sie"? Zmień linie:
[php:1:ac9a8e0dbb]<?php
$wykonaj_dane = mysql_query($dane);
?>[/php:1:ac9a8e0dbb]
na
[php:1:ac9a8e0dbb]<?php
$wykonaj_dane = mysql_query($dane) or die (mysql_error());
?>[/php:1:ac9a8e0dbb]
i będziesz wiedział w czym problem :wink:
kicaj
zdaje mi sie ze nie mozesz wprowadzic danych poniewaz dodajesz rekord id=2, a ustawione masz auto_increment = 5 hehe, ale nie jestem pewien
uboottd
kicaj: autoincrement=5 znaczy ze bedzie zaczynal od 5.

Natomiast problem polega na tym ze probujesz wpisac wszytkie rowy z id = 2, a jest to klucz tej tablei i jest on unikalny, czyli moze byc tylko jeden wiersz o id=2. albo pomin id w ogole albo ustawiaj go na null-a - wtedy bedzie przydzialny numer z autoincremanta
soczek
Cytat
Co to znaczy "wysypuje sie"? Zmień linie:
[php:1:863e49f945]<?php
$wykonaj_dane = mysql_query($dane);  
?>[/php:1:863e49f945]
na
[php:1:863e49f945]<?php
$wykonaj_dane = mysql_query($dane) or die (mysql_error());  
?>[/php:1:863e49f945]
i będziesz wiedział w czym problem  :wink:


nic mysql_error nietety nie zwraca

Cytat
kicaj: autoincrement=5 znaczy ze bedzie zaczynal od 5.

Natomiast problem polega na tym ze probujesz wpisac wszytkie rowy z id = 2, a jest to klucz tej tablei i jest on unikalny, czyli moze byc tylko jeden wiersz o id=2. albo pomin id w ogole albo ustawiaj go na null-a - wtedy bedzie przydzialny numer z autoincremanta


tabela jest pusta nie ma w niej zadnych rekordów
paranoik
sprubój tak ... ja co prawda troche inaczej ładuje dane do tabeli, ale o to samo chodzi i u mnie nigdy nie chciało się załadować jak opuszczałem kolumny tak jak ty zrobiłeś ... smile.gif

[php:1:9951aea88c]<?php

$user_drf = date(Y.m.d);
$user_iprf = $REMOTE_ADDR;
if(IsSet($user_subf))
{
$user_subf = 1;
}
else
{
$user_subf = 0;
}

$dane = "INSERT INTO users ( id, user_name, user_pass, user_mail, user_dr, user_dol,
user_doltmp, user_ipr, user_ipol, user_iptmp, ban, user_stat, user_sub)
VALUES (2, '$user_namef', '$user_passf', '$user_mailf', '$user_drf', '', '', '$user_iprf', '', '', '', '', '')";
$wykonaj_dane = mysql_query($dane);

?>[/php:1:9951aea88c]

PS. jeśli dobrze policzyłem tych których brakuje to powino zadziałać smile.gif
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.
Invision Power Board © 2001-2025 Invision Power Services, Inc.