Pawel
16.03.2004, 22:49:27
Hejka
Mam pytanko. Wiem że jest ono może banalne ale jakoś nie moge sobie z tym poradzić :cry: Chodzi o to że mam tabele 'uzytkownicy' i 'profile'. Chciałbym przyporządkować określony wiersz z tabeli 'profile' do uzytkownika. Niestety nie bardzo wiem jak zapisać zapytanie do bazy danych w tabeli 'uzytkownicy' PRIMARY KEY teorzy kolumna o nazwie 'nazwa_uz' Jak zadać zapytanie zeby baza wiedziała że określony wiersz z jednej tabeli odnosi się do określonego wiersza z drugiej :?:
Z góry dziękuje za podpowiedzi
pozdrawiam
paw
Piasiu
16.03.2004, 22:54:14
po pierwsze dwa razy rozpoczoles ten sam topic
po drugie to pytanie powinno wyladowac w dziale bazy danych
po trzecie to podaj nazwy kolumn w tych tabeleach to pomyslimy nad odpowiedzia
//edit
z tego co narazie zrozumialem to tobie chyba chodzi o relacje, jesli tak to robisz mniewiecej tak:
w tabeli uzytkownicy i profile musisz miec jakas wspolna kolumne, np. nazwa_uz i wtedy zapytanie wyglada tak:
[sql:1:13873aa94f]SELECT u.* FROM uzytkownicy u,profile p WHERE u.nazwa_uz=p.nazwa_uz;[/sql:1:13873aa94f]
To zapytanie wyswietli ci wszystkie rekordy z tabeli uzytkownicy gdzie kolumna nazwa_uz ma taka sam wartosc co nazwa_uz w tabeli profile.
Jak chchesz wyswietlic profielto robisz tak:
[sql:1:13873aa94f]SELECT p.* FROM uzytkownicy u,profile p WHERE u.nazwa_uz=p.nazwa_uz;[/sql:1:13873aa94f]
Jak coś skopcilem to i tak pewnie mnie ktos poprawi, a ja moge sie wytlumaczyc ze mi sie juz niestety oczy kleja
Pawel
16.03.2004, 23:02:50
tak chodzi mi o relacje ale chciałbym to zrobić przez php a nie w samym MySQL-u. dokładniej to chodzi mi o wstawienie do tabeli 'profile' danych tak aby byly przyporządkowane odpowiedniemu uzytkownikowi z tabeli 'uzytkownicy'
dzięki za podpowiedź
Piasiu
16.03.2004, 23:38:23
Ale po co robic to w php skoro SQL zrobi to za ciebei prawdopodobnie szybciej??
A ja dalej nie wiem o co ci chodzi tyle ze wiem ze o relacje ale jakie dokladnie to nie wiem
Pawel
17.03.2004, 09:09:23
mam taki skrypt
<?php
// rozpoczęcie sesji, która może okazać się konieczna później
// rozpoczęcie w tym miejscu, musi ona zostać przekazana przed nagłówkami
session_start();
// utworzenie krótkich nazw zmiennych
// utworzenie krótkich nazw zmiennych
$companyname=$HTTP_POST_VARS['companyname'];
$locality=$HTTP_POST_VARS['locality'];
$street=$HTTP_POST_VARS['street'];
$posteoffice=$HTTP_POST_VARS['posteoffice'];
$region=$HTTP_POST_VARS['region'];
$phone=$HTTP_POST_VARS['phone'];
$mobilphone=$HTTP_POST_VARS['mobilphone'];
$faxnumber=$HTTP_POST_VARS['faxnumber'];
$type=$HTTP_POST_VARS['type'];
$age=$HTTP_POST_VARS['age'];
$training=$HTTP_POST_VARS['training'];
$education=$HTTP_POST_VARS['education'];
$location=$HTTP_POST_VARS['location'];
$englishlanguage=$HTTP_POST_VARS['englishlanguage'];
$germanylanguage=$HTTP_POST_VARS['germanylanguage'];
$russianlanguage=$HTTP_POST_VARS['russianlanguage'];
$franchelanguage=$HTTP_POST_VARS['franchelanguage'];
$italianlanguage=$HTTP_POST_VARS['italianlanguage'];
$anotherlanguage=$HTTP_POST_VARS['anotherlanguage'];
$jobs=$HTTP_POST_VARS['jobs'];
$driving_license=$HTTP_POST_VARS['driving_license'];
$dl_A1=$HTTP_POST_VARS['dl_A1'];
$dl_A=$HTTP_POST_VARS['dl_A'];
$dl_B1=$HTTP_POST_VARS['dl_B1'];
$dl_B=$HTTP_POST_VARS['B'];
$dl_C1=$HTTP_POST_VARS['dl_C1'];
$dl_C=$HTTP_POST_VARS['dl_C'];
$dl_D1=$HTTP_POST_VARS['dl_D1'];
$dl_D=$HTTP_POST_VARS['dl_D'];
$dl_BE=$HTTP_POST_VARS['dl_BE'];
$dl_C1E=$HTTP_POST_VARS['dl_C1E'];
$dl_CE=$HTTP_POST_VARS['dl_CE'];
$dl_D1E=$HTTP_POST_VARS['dl_D1E'];
$dl_DE=$HTTP_POST_VARS['dl_DE'];
$dl_T=$HTTP_POST_VARS['dl_T'];
if (!$companyname || !$locality || !$street || !$posteoffice || !$region || !$phone || !$type || !$age || !$education || !$location || !$jobs)
{
echo 'Nie podano wszystkich potrzebnych danych.<br />'
.'Wróć do poprzedniej strony i spróbuj ponownie.';
exit;
}
$companyname=addslashes($companyname);
$locality=addslashes($locality);
$street=addslashes($street);
$posteoffice=addslashes($posteoffice);
$region=addslashes($region);
$phone=addslashes($phone);
$mobilphone=addslashes($mobilphone);
$faxnumber=addslashes($faxnumber);
$type=addslashes($type);
$age=addslashes($age);
$training=addslashes($training);
$education=addslashes($education);
$location=addslashes($location);
$englishlanguage=addslashes($englishlanguage);
$germanylanguage=addslashes($germanylanguage);
$russianlanguage=addslashes($russianlanguage);
$franchelanguage=addslashes($franchelanguage);
$italianlanguage=addslashes($italianlanguage);
$anotherlanguage=addslashes($anotherlanguage);
$jobs=addslashes($jobs);
$driving_license=addslashes($driving_license);
$dl_A1=addslashes($dl_A1);
$dl_A=addslashes($dl_A);
$dl_B1=addslashes($dl_B1);
$dl_B=addslashes($dl_B);
$dl_C1=addslashes($dl_C1);
$dl_C=addslashes($dl_C);
$dl_D1=addslashes($dl_D1);
$dl_D=addslashes($dl_D);
$dl_BE=addslashes($dl_BE);
$dl_C1E=addslashes($dl_C1E);
$dl_CE=addslashes($dl_CE);
$dl_D1E=addslashes($dl_D1E);
$dl_DE=addslashes($dl_DE);
$dl_T=addslashes($dl_T);
@ $db = mysql_pconnect('localhost', 'root', 'haslo');
if (!$db)
{
echo 'Błąd - połączenie z bazą danych nie powiodło się. Spróbuj jeszcze raz później.';
exit;
}
mysql_select_db('uwierz');
$zapytanie = "insert into przedsiębiorstwo values ('".$companyname."', '".$locality."', '".$street."', '".$posteoffice."', '".$region."', '".$phone."', '".$mobilphone."', '".$faxnumber."', '".$emailadress."', '".$discrabe1."', '".$data."')";
$wynik = mysql_query($zapytanie);
$zapytanie = "insert into przedsiębiorstwo values ('".$type."', '".$age."', '".$training."', '".$education."', '".$location."', '".$englishlanguage."', '".$germanylanguage."', '".$russianlanguage."', '".$franchelanguage."', '".$italianlanguage."', '".$anotherlanguage."', '".$jobs."', '".$driving_license."', '".$dl_A1."', '".$dl_A."', '".$dl_B1."', '".$dl_B."', '".$dl_C1."', '".$dl_C."', '".$dl_D1."', '".$dl_D."', '".$dl_BE."', '".$dl_C1E."', '".$dl_CE."', '".$dl_D1E."', '".$dl_DE."', '".$dl_T."')";
$wynik = mysql_query($zapytanie);
if ($wynik)
echo mysql_affected_rows().' Dane o przedsiębiorstwie i poszukiwany profil pracownika został zapisany do bazy danych.';0
?>
Chodzi mi o to jak zrobić tak żeby te dwie tabele miały relacje z tabelą 'uzytkownik' w której kolumny to nazwa_uz, haslo i email
dzięki
scanner
17.03.2004, 09:26:07
Prosze powiedzieć (na PW), który punkt Regulaminu został naruszony, a odblokuję temat celem dokonania poprawek.
Dotyczy ostatniego posta usera Pawel.