flaq1991
23.02.2013, 23:26:45
Witam mógłby ktoś mi pomóc ? potrzebuję przerobić ten skrypt tak żeby sprawdzał czy rekord o podanym loginie istnieje jeżeli tak to go nie doda oto skrypt :
<?php
if (!$con)
{
}
$sql="INSERT INTO uzytkownicy (Login, Haslo)
VALUES
('$_GET[Login]','$_GET[Haslo]')";
{
}
?>
sajegib
23.02.2013, 23:45:50
google ma dla ciebie milion gotowców, sposobów jest wieeeele, możesz np przeprojektowac tabele i zrobić konkretne pole UNIQUE ; )
flaq1991
24.02.2013, 10:42:34
Szukałem na google ale nic konkretnego znaleźć nie mogłem dlatego napisałem tutaj
kubek3898
24.02.2013, 14:41:22
$result = mysql_query("SELECT * FROM uzytkownicy WHERE login='$_GET['login']'");
flaq1991
24.02.2013, 22:48:11
Nie idzie wywalają jakieś syntaxy nie wiem co jest ;/
<?php
if (!$con)
{
}
$query = ("SELECT * FROM uzytkownicy WHERE login='$_GET['login']'");
{
print 'Jest już w tabeli'; }
else
{
print 'Pomyslnie dodano'; }
$sql="INSERT INTO uzytkownicy (Login, Haslo)
VALUES
('$_GET[Login]','$_GET[Haslo]')";
{
}
?>
Posio
24.02.2013, 22:53:34
$query = "SELECT * FROM uzytkownicy WHERE login = '".$_GET['login']."'";
Jak wywala SYNTAXY to je czytaj i naucz się rozumieć to co wyskakuje... robisz niepotrzebny SPAM.
flaq1991
24.02.2013, 22:59:19
Zrobiłem kod w ten sposób i pisze że dodano do bazy lecz nic nie dodaje wiecie dlaczego ?

<?php
if (!$con)
{
}
$query = "SELECT * FROM uzytkownicy WHERE login = '".$_GET['login']."'";
{
print 'Jest już w tabeli'; }
else
{
$query ="INSERT INTO uzytkownicy (Login, Haslo)
VALUES
('$_GET[Login]','$_GET[Haslo]')";
print 'Pomyslnie dodano'; }
?>
_Borys_
24.02.2013, 23:05:56
Przecież wyżej tobie pisał jak się wstawia
$query ="INSERT INTO uzytkownicy (Login, Haslo) VALUES ('{$_GET['Login']}','{$_GET['Haslo']}')";
flaq1991
24.02.2013, 23:11:49
Dobrze poprawiłem to lecz nic nie dodaje jak powinno pisze tylko ze pomyślnie ; o
<?php
if (!$con)
{
}
$query = "SELECT * FROM uzytkownicy WHERE login = '".$_GET['login']."'";
{
print 'Jest już w tabeli'; }
else
{
$query ="INSERT INTO uzytkownicy (Login, Haslo) VALUES ({$_GET['Login']},{$_GET['Haslo']})";
print 'Pomyslnie dodano'; }
?>
kamil_lk
24.02.2013, 23:14:15
bo nie wykonujesz tego zapytania.. użyj funkcji mysql_query przy zapytaniu
$query =mysql_query("INSERT INTO uzytkownicy (Login, Haslo) VALUES ({$_GET['Login']},{$_GET['Haslo']})"); if($query) print 'Pomyślnie dodano'; else print 'Wystąpił błąd';
flaq1991
24.02.2013, 23:18:24
kamil_lk pisze że wystąpił błąd nie wiem dlaczego ...
kamil_lk
24.02.2013, 23:19:58
To dopisz po zapytaniu or die(mysql_error()) i będziesz wiedział dlaczego.
$query =mysql_query("INSERT INTO uzytkownicy (Login, Haslo) VALUES ({$_GET['Login']},{$_GET['Haslo']})") or
die(mysql_error());
flaq1991
24.02.2013, 23:28:20
kod wygląda tak :
<?php
if (!$con)
{
}
$query = "SELECT * FROM uzytkownicy WHERE login = '".$_GET['login']."'";
{
print 'Rekord już istnieje !....'; }
else
{
$query =mysql_query("INSERT INTO uzytkownicy (Login, Haslo) VALUES ({$_GET['Login']},{$_GET['Haslo']})") or
die(mysql_error()); if($query) print 'Pomyślnie dodano'; else print 'Wystapil error'; }
?>
a taki error wywaliło
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 ')' at line 1
kamil_lk
24.02.2013, 23:33:11
Cytat(Posio @ 24.02.2013, 22:53:34 )

Jak wywala SYNTAXY to je czytaj i naucz się rozumieć to co wyskakuje... robisz niepotrzebny SPAM.
flaq1991
24.02.2013, 23:43:40
Pisze że mam błąd w pierwszej lini tylko gdzie może tam być błąd skoro jest tam <?php ? ;o
kamil_lk
24.02.2013, 23:50:45
Nie. Jest błąd składniowy zapytania.
$query = mysql_query("INSERT INTO `uzytkownicy`(`Login`, `Haslo`) VALUES('".$_GET['Login']."', '".$_GET['Haslo']."'") or
die(mysql_error());
flaq1991
25.02.2013, 00:03:21
jednak nie, nadal występuje ten sam error
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 '' at line 1
Posio
25.02.2013, 00:30:00
a może warto respektować wielkość liter zmiennych / tablic - zawartości ? <facepalm>
_Borys_
25.02.2013, 00:30:38
Nawiasu brakuje przed or w poście @kamil_lk. Swój poprzedni post też poprawiłem, teraz powinno działać.
flaq1991
25.02.2013, 00:42:26
Zrobiłem dokładnie tak :
$query =mysql_query("INSERT INTO uzytkownicy (Login, Haslo) VALUES ({$_GET['Login']},{$_GET['Haslo']})") or die(mysql_error());
I jest nadal to samo nie wiem już co jest ...
_Borys_
25.02.2013, 00:53:21
Sprawdzałeś czy napewno z dużych liter Haslo Login zwraca $_GET, wyświetl sobie print_r($_GET); i zobacz czy nie ma z małych liter i czy w ogóle zwraca coś, tak samo czy w bazie są duże litery sprawdź.
Popraw też zapytanie, mówiłem że poprawiłem w swoim pierwszym poście, muszą być apostrofy przed i za{}
flaq1991
25.02.2013, 22:25:00
Nie wiem już sam już mi sie spać chce od 1h sie męczę z tym... poszukam jakiegoś innego skryptu na google ;/
Jednak nic nie mogę znaleźć możecie mi pomóc ? :/
_Borys_
25.02.2013, 22:32:05
Musi działać, pokaż co zwraca tablica $_GET po wypełnieniu formularza
print_r($_GET);
flaq1991
25.02.2013, 22:36:56
Wyskakuje takie coś:
Array ( [Login] => test1 [Haslo] => test2 )
i dodam jeszcze raz kod źródłowy skryptu :
<?php
if (!$con)
{
}
$query1 = "SELECT * FROM uzytkownicy WHERE Login = '".$_GET['Login']."'";
{
print 'Rekord już istnieje !....'; }
else
{
$query =mysql_query("INSERT INTO uzytkownicy (Login, Haslo) VALUES ('{$_GET['Login']}','{$_GET['Haslo']}'"); if($query) print 'Pomyślnie dodano'; else
}
?>
_Borys_
25.02.2013, 22:56:42
Nawias
sorry moja wina
$query =mysql_query("INSERT INTO uzytkownicy (Login, Haslo) VALUES ('{$_GET['Login']}','{$_GET['Haslo']}')");
ale lepiej filtrować wyniki wprowadzana z formularza
przykład
$query =mysql_query("INSERT INTO uzytkownicy (Login, Haslo) VALUES ($Login,$Haslo)");
Pozatym hasło w bazie powinno być hashowane.
flaq1991
25.02.2013, 23:16:29
Okej wszystko działa dzięki ci
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.