Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: Problem z baza danych. Odrzucone zapytanie.
Forum PHP.pl > Forum > Bazy danych
djozkow
Na poczatku chcialem powiedziec ze szukalem na formum odp do mojego problemu i niestety nie moglem znalesc wiec kieruje moja prosbe o pomoc do was drodzy forumowicze zebyscie mi pomogli.

robie sklep internetowy do szkoly na zajecia i mam maly problem z z baza ale ze skyptem php sam nie wiem mam plik formularz rejestracja gdzie uzytkownik wpisuje swoje dane po wpisaniu daje wyslij w celu przeslania ich do bazy ale wyskakuje komunikat

Problem z baza danych. Odrzucone zapytanie. i nie wiem w czym ktwi problem gdzie jest pies pogrzebany nizej wkleje skypt ktory ma to wszystko wykonac

<?php
$komunikat= "";
function dodaj()
{
if(isSet($_GET["imie"]))
$imie=$_GET["imie"];
else
$imie= ""; if(isSet($_GET["nazwisko"]))
$nazwisko=$_GET["nazwisko"];
else
$nazwisko= ""; if(isSet($_GET["ulica"]))
$ulica=$_GET["ulica"];
else
$ulica= ""; if(isSet($_GET["nrdomu"]))
$nrdomu=$_GET["nrdomu"];
else
$nrdomu= ""; if(isSet($_GET["kod"]))
$kod=$_GET["kod"];
else
$kod= ""; if(isSet($_GET["miasto"]))
$miasto=$_GET["miasto"];
else
$miasto= ""; if(isSet($_GET["kraj"]))
$kraj=$_GET["kraj"];
else
$kraj= ""; if(isSet($_GET["telefon"]))
$telefon=$_GET["telefon"];
else
$telefon= ""; if ($imie == "" || $nazwisko == "" ||
$kraj == "" || $telefon == ""){
$GLOBALS['komunikat'] = "Prosze podac wszystkie wymagane dane!";
return false;
} $link = mysql_connect("serwer" , "uzytkownik" , "haslo");
$flag = mysql_select_db("nazwa bazy"); if(!$link || !$flag){
$GLOBALS['komunikat'] = "Problem z polaczeniem z baza danych.";
return false;
}
$query = "INSERT INTO OSOBA (IMIE, NAZWISKO, ULICA, NRDOMU, KOD, MIASTO, KRAJ, TELEFON) ";
$query .= "VALUES('".$imie."','";
$query .= $nazwisko."','";
$query .= $ulica."','";
$query .= $nrdomu."','";
$guery .= $kod."','";
$query .= $miasto."','";
$query .= $kraj."','";
$query .= $telefon."'";
$query .= ")";
$result = mysql_query($query);
if(!$result){
$GLOBALS['komunikat'] = "Problem z baza danych. Odrzucone zapytanie.";
mysql_close($link);
return false;
}
$ID = mysql_insert_ID();
mysql_close($close);
setCookie("ID" , $ID, time() +3600 * 24 * 30);
$GLOBALS['komunikat'] = "Dziekujemy za wyelnienie formularza. Dane zostaly zapisane w systemie.";
}
dodaj();
?>
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-2">
<title>Rejestracja</title>
</head>
<body>
<div>
<?php echo $komunikat; ?>
</div>
</body>
</html>
kitol
dodaj echo $query aby wyświetlić treść wygenerowanego zapytania,
Dodaj echo mysql_error($link) po mysql_query() aby wyswietlić komunikat błedu zwróconego przez bazę.
Wklej oba wyniki na forum.
nowotny
I pokaż co ci daje print_r($_GET);...
djozkow
a gdzie dokladnie w kodzie trzeba to wpisac ?

nie wiem czy w dobre miejsce wkleilem ale wyszlo mi takie cos

INSERT INTO OSOBA (IMIE, NAZWISKO, ULICA, NRDOMU, KOD, MIASTO, KRAJ, TELEFON) VALUES('daniel','de','','','','polska','43534543') Problem z baza danych. Odrzucone zapytanie.
nowotny
Po $GLOBALS['komunikat'] = "Problem z baza danych. Odrzucone zapytanie."; wklej to:
  1. <?php
  2. echo '<br>Error: '.mysql_errno($link).'<br>Error: '.mysql_error($link).'<br>';
  3. ?>


I podaj jeszcze strukturę tabeli "osoba"...
djozkow
wkleilem i jest blad Parse error: syntax error, unexpected '<' in /home/djozkow/public_html/add.php on line 72

a linia 72 to <?php

jak sie tu wstawia zdjecie to wstanie printsreena tabeli
nowotny
Wklej to co jest pomiędzy "<?php" i "?>", czyli tylko środkowy wiersz a nie wszystko... sciana.gif

http://imageshack.us
djozkow
no dokladnie czego ja tego nie widzialem to nie wiem teraz takie cos widnieje


Error: 1136
Error: Column count doesn't match value count at row 1
INSERT INTO OSOBA (IMIE, NAZWISKO, ULICA, NRDOMU, KOD, MIASTO, KRAJ, TELEFON) VALUES('daniel','jozkow','','','','polska','605943574') Problem z baza danych. Odrzucone zapytanie.

tam znalazlem blad chyba musiala ci sie literowka na klawiasturze za szybko napisac i zamiast

echo '<br>Error: '.mysql_error($link).'<br>Error: '.mysql_error($link).'<br>';

bylo

echo '<br>Error: '.mysql_erron($link).'<br>Error: '.mysql_error($link).'<br>';

ale jak poprawilem to jest takie cos

Error: Column count doesn't match value count at row 1
Error: Column count doesn't match value count at row 1
INSERT INTO OSOBA (IMIE, NAZWISKO, ULICA, NRDOMU, KOD, MIASTO, KRAJ, TELEFON) VALUES('daniel','jozkow','','','','polska','43534543') Problem z baza danych. Odrzucone zapytanie.
dziurson
deklarujesz że będziesz wprowadzał 8 danych a w wartości jest 7.

A błąd jest tu:

  1. <?php
  2. $guery .= $kod."','";
  3. ?>


zamiast:

  1. <?php
  2. $query .= $kod."','";
  3. ?>
djozkow
ja widze 8 ze wprowadzam i 8 deklaruje i mozesz jeszcze raz pokazac co ma byc zamiast tego <?php
$guery .= $kod."','";
?>

chyba przez przypadek wkeilesz dwa razy to samo
dziurson
nie widzisz że masz g(czyt. "gie") zamiast q (czyt. "ku")
djozkow
a no tak przepraszam dobre masz oko smile.gif
dziurson
to teraz ładnie kliknij pomógł tongue.gif
djozkow
udalo sie dodaly sie dane do bazy ale i tak jest jakis blad

Warning: mysql_close(): supplied argument is not a valid MySQL-Link resource in /home/djozkow/public_html/add.php on line 78

Warning: Cannot modify header information - headers already sent by (output started at /home/djozkow/public_html/add.php:78) in /home/djozkow/public_html/add.php on line 79
Dziekujemy za wyelnienie formularza. Dane zostaly zapisane w systemie.


linia 78 to mysql_close($close);

linia 79 to setCookie("id" , $id, time() +3600 * 24 * 30);
dziurson
linia 78 powinna chyba wyglądać tak:

mysql_close($link);
djozkow
juz klikam smile.gif z wielka checia smile.gif nawet 10 razy he
nowotny
Cytat(djozkow @ 4.02.2008, 19:43:08 ) *
tam znalazlem blad chyba musiala ci sie literowka na klawiasturze za szybko napisac i zamiast

echo '<br>Error: '.mysql_error($link).'<br>Error: '.mysql_error($link).'<br>';

bylo

echo '<br>Error: '.mysql_erron($link).'<br>Error: '.mysql_error($link).'<br>';

Nie... ja dobrze wpisałem... to ty coś namieszałeś... poczytaj sobie o funkcjach mysql_errno" title="Zobacz w manualu PHP" target="_manual i mysql_error" title="Zobacz w manualu PHP" target="_manual
djozkow
kurde znowu nie chodzi wtedy poszlo i raz sie zapisaly dane do bazy i koniec znowu jakis dziwny blad

Duplicate entry '0' for key 1 Problem z baza danych. Odrzucone zapytanie.

Juz wiem co bylo nie tak id jest 0 i sie kluci jak wprowadzam nowego jak zrobic zeby liczylo do nastepnego id teraz bylby 1 questionmark.gif
kitol
ustawić w definicji kolumny AUTOINCREMENT?
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.