Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >  
Reply to this topicStart new topic
> Pytania PHP + SQL
perhydrol
post
Post #1





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 11.12.2006

Ostrzeżenie: (0%)
-----


Witam,

w dniu jutrzejszym mam odbyć rozmowę kwalifikacyjną na stanowisko młodszego programisty PHP.
Znalazłem kilka postów na podobny temat, ale chciał bym jeszcze o coś dopytać Was.

Macie może pomysł, na jakieś ciekawe zapytania SQL (MySQL) jakie mogli by zadać rekrutujący??
-szukam czegoś na miarę zadania sprawdzającego (IMG:style_emoticons/default/smile.gif)

Kolejna sprawa to sortowanie, mniej więcej mam namiary na tego typu pytanka, komuś przychodzą do głowy jakieś przykłady (IMG:style_emoticons/default/biggrin.gif)


Będę wdzięczny za wasze odp...

-pozdrawiam.
Go to the top of the page
+Quote Post
-mkdes-
post
Post #2





Goście







Nikt nie odpisał.
Nie dziwię się, mysql w praktyce rządzi się swoimi regułami.
Doświadczeń praktycznych nikt nie zdradzi. Za dużo czasu poświęcił na ich dobycie.
Pozostaje ci zbierać doświadczenia i przekonać pracodawcę, że jesteś w stanie rozwiązać każdy problem, mimo nieznajomości tematu. Szybkie uczenie, rozumienie, inteligencja, rozwiązywanie logicznych zadań.
Go to the top of the page
+Quote Post
perhydrol
post
Post #3





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 11.12.2006

Ostrzeżenie: (0%)
-----


hehe,

OK, może źle sformułowałem swoje pytanie.

Nie liczyłem na to, że ktoś mi zdradzi jakieś magiczne sekrety, a jedynie na to, że przedstawi jakiś scenariusz do rozwiązania.
Czyli jako zadanie dla mnie, coś w stylu sprawdzenia się, bo przecież prawie każdy scenariusz który sobie wymyślę sam, będę go w stanie rozwiązać ;p

Co innego jak się pisze konkretną aplikację i zmaga się z danym "problemem",
więc ciekaw byłem pomysłów scenariuszy do rozwiązania.

-osobiście mam wrażenie, że to trochę wina działu Hydepark. Raczej słabym zainteresowaniem forumowiczów się cieszy ;P
(*oczywiście mogę się mylić)

-pozdrawiam.

Ten post edytował perhydrol 1.03.2010, 23:52:53
Go to the top of the page
+Quote Post
SHiP
post
Post #4





Grupa: Zarejestrowani
Postów: 697
Pomógł: 47
Dołączył: 19.12.2003
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Myślę, że jakieś klasyczne pytania..
PHP:
- różnice między include a require, include a include_once
- czy wiesz co to jest MVC? Opisz w jednym/dwóch zdaniach
- czy wiesz co to moduł rewrite
- napisz wyrażenie regularne znajdujące użytkowników na literę K posiadającyh "w" na 4 miejscu loginu
- czy wiesz jakie są różnice miedzy funkcjami preg_ oraz ereg_
- napisać klasę A dziedziczącą po B, klasa B powinna implementować wzorzec C

MySQL:
- w jaki sposób grupuje się rekordy, podać przykład (GROUP BY)
- określanie warunkow dla grup (HAVING)
- łączenie zapytań i podzapytania: różne formy typu UNION, ALL, INTERSECT, JOIN (LEFT|RIGHT|INNER)

Późno post dodałeś. W dzień mógłbym więcej wymyślić. Z tego co wiem to zazwyczaj trzeba kawałek kodu napisać lub przeanalizować jakiś gotowy...

Ten post edytował SHiP 2.03.2010, 01:11:25
Go to the top of the page
+Quote Post
pyro
post
Post #5





Grupa: Zarejestrowani
Postów: 2 148
Pomógł: 230
Dołączył: 26.03.2008

Ostrzeżenie: (0%)
-----


Cytat(SHiP @ 2.03.2010, 00:28:35 ) *
modół rewrite


Nie ma czegoś takiego. Sorrki za mały off-top, ale to się mocno rzuca w oczy (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
SHiP
post
Post #6





Grupa: Zarejestrowani
Postów: 697
Pomógł: 47
Dołączył: 19.12.2003
Skąd: Lublin

Ostrzeżenie: (0%)
-----


Dzięki za uwagę. Bład ortograficzny poprawiłem (IMG:style_emoticons/default/biggrin.gif) Późno w nocy głupoty piszę (IMG:style_emoticons/default/smile.gif) .

Chodziło mi o Rewrite_module z Apache czyli krótko mówiąć moduł mod_rewrite.
http://httpd.apache.org/docs/1.3/mod/mod_rewrite.html

Może źle to określiłem jako dotyczące PHP ponieważ to część Apache (IMG:style_emoticons/default/winksmiley.jpg) .
Go to the top of the page
+Quote Post
darko
post
Post #7





Grupa: Zarejestrowani
Postów: 2 885
Pomógł: 463
Dołączył: 3.10.2009
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


perhydrol - daj znać, jak poszło i jakie padły pytania (i odpowiedzi).
Go to the top of the page
+Quote Post
varez
post
Post #8





Grupa: Zarejestrowani
Postów: 275
Pomógł: 32
Dołączył: 17.06.2007

Ostrzeżenie: (0%)
-----


trzeba bylo napisac raczej wczesniej niz o 20 skoro jutro czyli dzis masz/miałeś ta rozmowa (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
Spawnm
post
Post #9





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Ale co to za wykuwanie pytań na pamięć , to nie szkoła ... zostaniesz zatrudniony i co powiesz? Nie umiem ?
Go to the top of the page
+Quote Post
Puciek
post
Post #10


TAO programowania


Grupa: Zarejestrowani
Postów: 340
Pomógł: 3
Dołączył: 25.03.2003
Skąd: ze słoika

Ostrzeżenie: (30%)
XX---


Cytat(Spawnm @ 2.03.2010, 14:02:34 ) *
Ale co to za wykuwanie pytań na pamięć , to nie szkoła ... zostaniesz zatrudniony i co powiesz? Nie umiem ?
Ale tak wlasnie przygotowal go nasz system edukacji (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
thek
post
Post #11





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Taaa... Śmiać mi się chciało gdy usłyszałem o zamysłach przy reformie oświaty i porównałem do pierwszych efektów. Zamiast rozwoju samodzielnego myślenia mamy "wbicie się w klucz" i ogólne jedno wielkie krętactwo. Gdybym był obecnym maturzystą, to przygotowania do niej zamiast pół roku lub roku zajęły by mi tydzień lub mniej i zdałbym śpiewająco zarówno przedmioty ścisłe jak i humanistyczne (IMG:style_emoticons/default/biggrin.gif) Jeden dzień na kww (kopiuj-wklej wykuj) części ustnej i przejrzenie materiałów do pisemnej. Sorki, ale tak obecnie to wygląda. Gdy zdawałem ja i rówieśnicy oraz osoby starsze to liczyła się jednak wiedza bardziej i była uzależniona od profilu także. Gdyby ktoś zobaczył obecnie na zaawansowanej maturze zadania jakie robił profil matematyczno-fizyczny to by płakał obecnie i zgrzytał zębami. Pełny przebieg wykresu funkcji z liczeniem punktów przegięcia, miejsc zerowych określania dziedziny i przeciwdziedziny to była tam podstawa bazująca na choćby liczeniu pochodnych, znajomości obliczania granic (lim) i takie inne badziewia, które niektórzy dopiero na studiach poznają. Ja już nawet nie straszę licealistów obecnych całkami, które w liceum także mieliśmy jako profil mat-fiz opracowywane. Tak więc uważam, że obecna szkoła to light jeszcze ogłupiający bardziej niż mający uczyć czegokolwiek. Co zresztą po naszym forum widać, bo matma i logika kompletnie w obecnych czasach to beeeeee. Wszyscy są humanistami i matmy nie rozumieją, albo ścisłowcami i mają dysfunkcje graniczące z dysmózgią, a i tak matmy nie rozumieją (IMG:style_emoticons/default/biggrin.gif)
Go to the top of the page
+Quote Post
perhydrol
post
Post #12





Grupa: Zarejestrowani
Postów: 50
Pomógł: 0
Dołączył: 11.12.2006

Ostrzeżenie: (0%)
-----


Cytat(darko @ 2.03.2010, 10:57:19 ) *
perhydrol - daj znać, jak poszło i jakie padły pytania (i odpowiedzi).


Witam wszystkich, przepraszam że dopiero dziś odpisuję ale najzwyklej w świecie nie miałem czasu odwiedzić forum.
Przyjęty na okres próbny, a jak mi poszło hmm... przyznam że nie byłem zadowolony z odpowiedzi jakich udzielałem.
Co do pytań jakie padły to nie wszystkie pamiętam, ponieważ rzucane były w moją stronę przez trzy osoby na przemian (większość związana z OOP).

Pytania:
Zmienić kolejność elementów tablicy, mając jedną zmienną pomocnicza "n", bez użycia dodatkowych zmiennych tablicowych! (w pętli, nie za pomocą gotowej funkcji)

  1. $aTab = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)
  2. $n;

Cytat
Pożądany wynik: 10, 9, 8, 7, ... 2, 1
mile widziane wasze przykłady rozwiązań (IMG:style_emoticons/default/smile.gif)

-operacje na ciągach znaków preg_, ereg_ etc...
-różnice pomiędzy include, include_once, require...
-przykładowe zadanko obrazujące działanie referencji "&",
-sposoby zabezpieczenia Sesji

-dziedziczenie, interfejsy, klasy-metody abstrakcyjne, "ppp", jak działają przedstawić na tablicy przykład i omówić,
-jakie znam wzorce projektowe, omówić Singleton, MVC,

-sposoby dostępu do baz danych SQL server przy pomocy PHP
-jak skutecznie chronić się przed SQL-Injecton,
-istota działania wyzwalaczy, zademonstrować (sql),
-transakcje (sql),

-prezentacja kodu źródłowego z wybranego zrealizowanego projektu.

Faktycznie trochę późno wpadłem na pomysł aby napisać posta z pytaniem na forum...
Korzystając z okazji chciał bym zapytać kogoś kto odbył szkolenie z ZEND-a, (uzyskał certyfikat), czy może polecić jakieś materiały z którymi warto się zapoznać przed udziałem w takim szkoleniu, ułatwiające jego odbycie.

-pozdrawiam

Go to the top of the page
+Quote Post
thek
post
Post #13





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




To nie miałeś jakichś trudnych (IMG:style_emoticons/default/smile.gif) Zadanko z zamianą tablicy jest proste. W tym wypadku wystarczy pętla mająca floor(n/2) kroków (IMG:style_emoticons/default/smile.gif) Jak?
  1. for( $i = 0; $i<floor( count($tablica)/2 ); $i++ ) {
  2. $n = $tablica[$i];
  3. $tablica[$i] = $tablica[ count($tablica)-$i ];
  4. $tablica[ count($tablica)-$i ] = $n;
  5. }
W efekcie działa to tak, że pierwszy zamieniasz z ostatnim, drugi z przedostatnim, trzeci z przedprzedostatnim itd (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
tvister
post
Post #14





Grupa: Zarejestrowani
Postów: 253
Pomógł: 29
Dołączył: 18.08.2008

Ostrzeżenie: (0%)
-----


Hehe $i, $n to już są 2 zmienne.

Proponuje użycie stosu (IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
blooregard
post
Post #15


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
Proponuje użycie stosu

Miało być bez użycia funkcji, więc rozumiem, że array_pop() i array_push() też nie wchodzą w grę.

Jedna zmiennna pomocnicza, zamiana w pętli:
1. z foreach:
  1. $aTab = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
  2.  
  3. foreach ($aTab as $n) {
  4. $aTab[10-$n] = $n;
  5. }//foreach
  6.  
  7. print_r($aTab);


2. z while:
  1. <?php
  2. $aTab = array(1, 2, 3, 4, 5, 6, 7, 8, 9, 10);
  3. $n=10;
  4. while ($n > 0) $aTab[10-$n] = $n--;
  5.  
  6. print_r($aTab);

rezultat (w obu przypadkach taki sam):
Cytat
Array ( [0] => 10 [1] => 9 [2] => 8 [3] => 7 [4] => 6 [5] => 5 [6] => 4 [7] => 3 [8] => 2 [9] => 1 )
Go to the top of the page
+Quote Post
Cysiaczek
post
Post #16





Grupa: Moderatorzy
Postów: 4 465
Pomógł: 137
Dołączył: 26.03.2004
Skąd: Gorzów Wlkp.




@blooregard - toś pojechał hahahh (IMG:style_emoticons/default/smile.gif)
  1. $aTab[count($aTab)-$n]=$n; // to może przejdzie (IMG:style_emoticons/default/tongue.gif)
Go to the top of the page
+Quote Post
blooregard
post
Post #17


Newsman


Grupa: Moderatorzy
Postów: 2 033
Pomógł: 290
Dołączył: 21.12.2007
Skąd: Łódź




Cytat
@blooregard - toś pojechał hahahh

Nie bardzo załapałem, o co Ci chodzi?
Go to the top of the page
+Quote Post
phpion
post
Post #18





Grupa: Moderatorzy
Postów: 6 072
Pomógł: 861
Dołączył: 10.12.2003
Skąd: Dąbrowa Górnicza




@blooregard:
Bez urazy, ale z takim rozwiązaniem pewnie byś wyleciał. Dlaczego? Bo sprawdzi się tylko w tym konkretnym przypadku (lub jemu podobnym). Wystarczy zmienić liczbę elementów w tablicy (jak zauważył ~Cyś) albo ich kolejność i Twoje rozwiązanie leży. Równie dobrze mogłeś napisać:
  1. $aTab = array(10, 9, 8, 7, 6, 5, 4, 3, 2, 1);

(IMG:style_emoticons/default/smile.gif)
Go to the top of the page
+Quote Post
Spawnm
post
Post #19





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Leży nie tylko ze względu na ilość, ale i sam pomysł - co zrobisz gdy w tej tablicy pojawią się array(2,11,-4,234,22,12,4,55,-99,0) ?
Go to the top of the page
+Quote Post
thek
post
Post #20





Grupa: Moderatorzy
Postów: 4 362
Pomógł: 714
Dołączył: 12.02.2009
Skąd: Jak się położę tak leżę :D




Bloo, ale Twój przykład idzie się paść gdy tablica nie jest w kolejności, bo uwzględnia fakt, że liczby sa kolejne i wykorzystuje to do rozpoznawania klucza (IMG:style_emoticons/default/winksmiley.jpg) A tu chodzi o odwrócenie tablicy jak mniemam zwyczajne. Równie dobrze mogłem napisać
  1. for($i=0; $i<10; $i++)
  2. $tablica[$i] = $i+1;
i efekt byłby identyczny (IMG:style_emoticons/default/biggrin.gif)
Pytanie do tvistera. Czy pętlę while i for można traktować zamiennie? Bo z tego co mi wiadomo dobry lub prosty algorytm pozostawia swobodę do takiej zamiany. Stos zaś jak chcesz zastosować? Gdzie będziesz odkładac elementy, skoro zabronione jest użycie drugiego typu tablicowego a $n może być jedynie skalarem w domyśle? Równie dobrze i szybko bym mógł zrobić:
  1. while ($n[] = array_pop( $tablica ) ) {}

i to by dopiero była szybka piłka (IMG:style_emoticons/default/winksmiley.jpg) Problemem tego zadania jest zrobienie funkcji "swap" tak naprawdę by tylko z 1 zmiennej korzystała. Mogę chyba przecież odczytać klucz tego elementu funkcją key() czy przesunąć wskaźniki z użyciem next() skoro zmienna iterująca jest zabroniona. Bo jakoś po tej tablicy muszę się poruszać, a zmienna pomocnicza MUSI zawierać element tymczasowy (IMG:style_emoticons/default/smile.gif) To zaś wymusza użycie while lub foreach. A skoro mamy
foreach( $tablica AS $value)
to też musimy jakoś inaczej obejść brak iteratora. Bo inaczej tablica (1,3,5,7,9,2,4,6,8,10), czyli nieuporządkowana zrobi nam według kodu bloo (10,9,8,7,6,5,4,3,2,1) i tak, więc to nie jest rozwiązanie. tu trzeba przynajmniej funkcji key użyć:
  1. foreach( $tablica AS $n ) {
  2. if( $key() > floor( count($tablica)/2 ) )
  3. break;
  4. $tablica[ key() ] = $tablica[ count($tablica)-key()-1 ];
  5. $tablica[ count($tablica)-key()-1 ] = $n;
  6. }


EDIT: break jest by w połowie się zakończyła, bo inaczej podwójnie całą tablice odwrócimy, a więc wrócimy do punktu wyjścia (IMG:style_emoticons/default/biggrin.gif)
EDIT2: napisałem też o next(), ponieważ while też MUSI jakoś przechodzić po kolejnych elementach tablicy a $n nie może być do tego celu użyte. Różnica pomiędzy while i foreach to tak naprawdę "tylko" fakt, że ten drugi będzie miał next() "wbudowany" w siebie, podczas gdy while będzie go musiało wywoływać jawnie, a konstrukcja będzie wyglądać tak:
  1. reset( $tablica );
  2. while( $n = current() ){
  3. if( $key() > floor( count($tablica)/2 ) )
  4. break;
  5. $tablica[ key() ] = $tablica[ count($tablica)-key()-1 ];
  6. $tablica[ count($tablica)-key()-1 ] = $n;
  7. next($tablica);
  8. }
Go to the top of the page
+Quote Post

2 Stron V   1 2 >
Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 23.08.2025 - 06:56