Anonymous
30.05.2004, 13:48:46
Cześć
Mam do Was takie pytanko.
Robię sobie prosty skrypcik w php w połączenie z baza mysql.
Jest sobie formularz w ktorym jest radio button o nazwie plec z dwoma mozliwościami kobieta i mezczzyna.
Ponizej mam zwykle dwa inputy w ktorych wpisuję imie i nazwisko. I głównym celem jest takie coś by zależnie co zaznaczyłem w radio butonie, to wartości inputów, żeby mi się zapisywały w bazie danych w dwu osobnych tabelach: kobiety i mezczyzni.
No i zroziłem taki skrypt:
[php:1:1ae26dab86]<?php
$mysql=mysql_connect('localhost', "", "") or die ("brak polaczenia");
$baza = mysql_select_db("tomasz") or die ("Nie można polaczyc z baza");
$query =
if($plec="kobieta")
echo("INSERT INTO `tabela1` (`id`, `imiono`, `nazwicho`) VALUES ('', '$imie', '$nazwisko')");
else
echo("INSERT INTO `tabela2` (`id`, `imiono`, `nazwicho`) VALUES ('', '$imie', '$nazwisko')");
$result = mysql_query ($query);
/*while ($wiersz=mysql_fetch_array($result))
{
print ($wiersz[id].' '.$wiersz[imiono].' '.$wiersz[nazwicho]."<br>");
}*/
?>[/php:1:1ae26dab86]
Problem jest w linijce if($plec=="kobieta")
wyskakuje, że tu ejst jakiś błąd, tylko nie wiem gdzie, czy jakiegoś nawiasu brakuje czy co? Próbowałem wielu rzeczy i zima.
Może mógłbym ktoś z Was mi doradzić?
Pozdrawiam.
Kill3R
30.05.2004, 13:55:54
w kodzie masz
[php:1:c97f1620b9]<?php
if($plec="kobieta")
?>[/php:1:c97f1620b9]
a w tresci pytania
[php:1:c97f1620b9]<?php
if($plec=="kobieta")
?>[/php:1:c97f1620b9]
jeden znak "="
w tresci porownujesz plec a w kodzie podstawiasz
i nie bardzo rozumiem $guery =
Anonymous
30.05.2004, 13:59:49
z dwoma znakami == tez robiłem... ciągle jest błąd w linijce 5.. a $query to ejst polecenie dla serwer co ma zrobić. Jeżeli bym niestosował funkcji if, to wtedy do tabeli1 zapisze mi się imie i nazwisko. Ale właśnie chcę by ta tabelę samo wybrało poprzez fukncje if. A $result tylko zwraca to co wykonało sie poprzez polecenie $query. Więc to ejst dobrze. ale nie wiem co z tym if ;/
Kill3R
30.05.2004, 14:04:38
Popatrz na ten przyklad w manualu
tam $query jest do samego zapytania do bazy
a nie do calej instrukcji if
http://www.php.net/manual/en/ref.mysql.php
I zmien moze tytul tego posta bo sie moderator przyczepi ;-)
mike
30.05.2004, 14:07:50
To co pisałeś z tym echo to była totalna bzdura. Powonno być tak:
<?php
$mysql=mysql_connect('localhost', \"\", \"\") or die (\"brak polaczenia\"); $baza = mysql_select_db(\"tomasz\") or die (\"Nie można polaczyc z baza\"); if($plec==\"kobieta\")
{
$query = \"INSERT INTO `tabela1` (`id`, `imiono`, `nazwicho`) VALUES ('', '$imie',
'$nazwisko')\";
}
else
{
$query = \"INSERT INTO `tabela2` (`id`, `imiono`, `nazwicho`) VALUES ('', '$imie',
'$nazwisko')\";
}
/*while ($wiersz=mysql_fetch_array($result))
{
print ($wiersz[id].' '.$wiersz[imiono].' '.$wiersz[nazwicho].\"<br>\");
}*/
?>
Anonymous
30.05.2004, 14:16:23
[php:1:a02ab6766e]<?php
$query = "SELECT * FROM my_table";
?>[/php:1:a02ab6766e]
Chodzi Ci o to? Jeżeli tak, to to ejst zapytanie KTORĄ tabele ma wybrać. Do tego może być dodane whefe i podan wiersz z danej kolumny. Ale zamiast tego wszystkiego może być INSERT INTO czyli zapisz gdzie...... a ja mam dwie tabele czyli musze dac IF żeby zdefiniowac gdzie to zapisać.
To wszystko jest to samo.
Jeżeli nie, to masz jakąś propozycję co do tych kilku linijek, żeby to działało?
Anonymous
30.05.2004, 14:20:09
O właśnie mike_mech teraz działa.
Hmm.. uczę się na własną rękę i przeczytałem o funkcji if i tam ciągle było te echo...... dziwne.
Dzięki wielkie.
Anonymous
30.05.2004, 15:15:47
Jeszcze tylko male pytanie mike_mech, dlaczego to caly czas się zapisuje w tabeli1, mimo że zmieniam radio button?
mike
30.05.2004, 15:29:16
Bo pewnie masz tak:
<?php
//..
if($plec = \"kobieta\")
//..
?>
a powinieneś mieć tak:
<?php
//..
if($plec == \"kobieta\")
//..
?>
Anonymous
30.05.2004, 15:35:10
Dokładnie o ten detal chodziło. Dobry jesteś.
Wielkie dzięki.
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.