Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

2 Stron V   1 2 >

in5ane
Napisane: 10.12.2014, 18:15:44





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Chodzi o to, że programowanie obiektowe jest bardziej rozszerzalne. Łatwo też zrozumieć kod osobie, która go nie pisała - łatwiej będzie jej coś dopisać. Siadając do obcego kodu strukturalnego naprawdę ciężko czasem się połapać. Nie mówie, że w OOP jest banalnie, bo to też zależy, jak programista napisał klasę czy metody.

Najważniejsze jest również to, co jest rzadko poruszane/omawiane. W programowaniu obiektowym tworzymy klasy, w niej metody i następnie tworzy się obiekty wykorzystujące dane klasy. I to jest ważne, co to jest obiekt? Obiekt jest to swego rodzaju typ danych. Tak jak masz string, integer, array, to tak samo masz obiekt.

Jak będziesz chciał zrobić np. zbiór danych o samochodach. Czyli masz markę, marka ma kilka modeli, każdy model ma kilka podmodeli (inne silniki itp.) to musiałbyś stworzyć olbrzymią tablicą array w programowaniu strukturalnym. Zarządzanie taką tablicą na pewno do łatwych zadań nie będzie należało.

Ciężko to trochę wytłumaczyć - nie jestem dobrym nauczycielem. Na podstawie swojego doświadczenia, co mógłbym Ci doradzić. Ja nauczyłem się OOP dopiero, gdy wziąłem pod jakąś aplikację framework do jej budowy. Wiedziałem, że jest on napisany obiektowo. Wiedziałem również, że nic nie wiem na ten temat (gdyż, tak jak Ty, gdy próbowałem się uczyć OOP z kursów/poradników/tutoriali to to olewałem i się zastanawiałem po co to). Pisząc aplikację we framework'u opierasz się o dokumentację lub gotowe rozwiązania lub ewentualnie jakieś tutoriale. I pisz sobie tą aplikację, będziesz poznawał cały czas coś nowego. I w między czasie w końcu zaczniesz komuś na co to komu te klasy, metody i obiekty. Ja zacząłem od frameworka CodeIgniter (który jest kiczem!), ale na początek był to świetny wybór. Szybko to ogarnąłem. Później nauczyłem się frameworka Kohana, w którym piszę do dziś w sumie. W międzyczasie liznąłem Laravel, Symfony 2. I dziś? Nie wyobrażam sobie, aby miało nie być programowania obiektowego. Czasem gdy mam coś do napisania, jakiś skrypt coś wykonujący. To od razu zaczynam pisać do tego klasę. Mając taką klasę, możemy ją wydzielić do osobnego pliku i tylko includować i tworzyć na niej obiekty. Wniosek? Łatwo przenosić kawałki kodów. Np. tworzysz klasę do generowania formularzy. Jeśli całą logikę zawrzesz w klasie, to możesz ją swobodnie przenosić pomiędzy aplikacjami. Ba, możesz udostępniać te klasę innym użytkownikom, którzy widząc ja pierwszy raz na oczy i mając mini dokumentację, czyli jakie należy wywołać metody będą mogli jej używać w ogóle nie zwracając uwagi na to, jaki jest w środku kod.

Reasumując. Jak najbardziej zaleca się pisania swoich aplikacji obiektowo. Gdybyś liznął inne języki programowania, to od razu byś to wiedział. Bo nie oszukujmy się, PHP jest dość ubogi w stosunku do np. Javy czy C#. Ostatnio piszę również większą aplikację w Go. Tam programowanie obiektowe wygląda troszkę inaczej, ale również tego się używa.
  Forum: Przedszkole · Podgląd postu: #1135475 · Odpowiedzi: 7 · Wyświetleń: 1 047

in5ane
Napisane: 6.11.2014, 11:20:33





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Jak miałeś dwa z matmy, to chodzi o nawiasy. Joke happy.gif. Gdyż krótko mówiąc w informatyce OR i AND to opeartatory alternatywy (czyli sumy) i koniunkcji (czyli iloczynu). A na poniższym obrazku masz to ładnie zobrazowane (wraz z pzosotałymi operatorami).
  Forum: Przedszkole · Podgląd postu: #1131062 · Odpowiedzi: 7 · Wyświetleń: 737

in5ane
Napisane: 17.09.2014, 13:50:05





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Oczywiście, że jest możliwość. Tutaj wpisałem Twoje rozwiązanie dla zobrazowania: http://jsfiddle.net/jxko2zrd/
  Forum: Przedszkole · Podgląd postu: #1125154 · Odpowiedzi: 3 · Wyświetleń: 1 025

in5ane
Napisane: 10.07.2014, 11:16:00





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Najprościej to zrób sobie tak:
  1. <?php
  2. $loadxml = simplexml_load_file('cos.xml');
  3. $i = 1;
  4. foreach ($loadxml->channel->item as $channel)
  5. {
  6. if ($i == 3)
  7. {
  8. echo $channel->title;
  9. }
  10.  
  11. $i++
  12. }
  13. ?>


@edit: nospor dał Ci jeszcze lepszą odpowiedź tongue.gif
  Forum: Przedszkole · Podgląd postu: #1114666 · Odpowiedzi: 2 · Wyświetleń: 140

in5ane
Napisane: 9.07.2014, 22:03:01





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Routing dynamicznie generuje podstronę na podstawie tytułu kategorii czy podkategorii.
  Forum: Przedszkole · Podgląd postu: #1114591 · Odpowiedzi: 2 · Wyświetleń: 199

in5ane
Napisane: 25.06.2014, 17:40:13





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Musisz jeszcze jQuery zaimplementować. Np. tak:
  1. <script src="http://code.jquery.com/jquery-2.1.1.min.js"></script>
  Forum: Przedszkole · Podgląd postu: #1112414 · Odpowiedzi: 5 · Wyświetleń: 467

in5ane
Napisane: 26.06.2014, 07:13:25





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Podpowiem Ci, że musisz zrobić funkcje rekurencyjną z pętlą foreach po wyciągniętych linkach i w pętli dać jeszcze warunek, że jeśli link jest w tej samej domenie (tutaj użyj do IF'a preg_match) i jeśli spełnia warunek to uruchamiasz ponownie tą samą funkcję.
  Forum: Przedszkole · Podgląd postu: #1112492 · Odpowiedzi: 7 · Wyświetleń: 567

in5ane
Napisane: 24.06.2014, 13:12:14





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

  1. $request_url ='adres';
  2.  
  3. $ch = curl_init();
  4. curl_setopt($ch, CURLOPT_URL, $request_url);
  5. curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);
  6. $result = curl_exec($ch);
  7.  
  8. $regex = '|<a.*?href="(.*?)"|';
  9. preg_match_all($regex, $result, $parts);
  10. $links = $parts[1];
  11. foreach ($links as $link)
  12. {
  13. echo $link . '<br>';
  14. }
  15. curl_close($ch);
Tak pobierzesz wszystkie linki z konkretnej strony. Tylko teraz trzeba by wymyśleć, jak poruszać się po podstronach tej strony. Mógłbyś z pobranych linków wchodzić na te co będą w tej samiej domenie.
  Forum: Przedszkole · Podgląd postu: #1112199 · Odpowiedzi: 7 · Wyświetleń: 567

in5ane
Napisane: 6.05.2014, 15:57:55





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Proponuję coś takiego, powinno zadziałać.
  1. if (isset($_POST["oblicz1"]))
  2. {
  3. if (($pustepole1==true)and($pustepole2==true))
  4. {
  5. echo "Wypenij oba pola!";
  6. }
  7. elseif($pustepole1 == true)
  8. {
  9. echo "Wypenij pierwsze pole!";
  10. }
  11. elseif ($pustepole2 == true)
  12. {
  13. echo "Wypenij drugie pole!";
  14. }
  15. elseif (($zawartoscpola1 == false) && ($zawartoscpola2 == false))
  16. {
  17. echo "Dozwolone są tylko liczby (w zapisywaniu ułamka użyj zamiast przecinka kropkę)!";
  18. }
  19. elseif ($zawartoscpola1 == false)
  20. {
  21. echo "Dozwolone są tylko liczby (w zapisywaniu ułamka użyj zamiast przecinka kropkę)!";
  22. }
  23. elseif ($zawartoscpola2 == false)
  24. {
  25. echo "Dozwolone są tylko liczby (w zapisywaniu ułamka użyj zamiast przecinka kropkę)!";
  26. }
  27. else
  28. {
  29. echo "Wynik to $wynik";
  30. }
  31. }
  32.  
  33. if (isset($_POST["oblicz2"]))
  34. {
  35. if ($pustedodatkowepole == true)
  36. {
  37. echo "<br />Wypełnij to pole!";
  38. }
  39. elseif ($zawartoscdodatkowegopola == false)
  40. {
  41. echo "<br />Dozwolone są tylko liczby (w zapisywaniu ułamka użyj zamiast przecinka kropkę)!";
  42. }
  43. else
  44. {
  45. echo "<br />Wynik to $liczbadodatkowa";
  46. }
  47. }
  Forum: Przedszkole · Podgląd postu: #1105208 · Odpowiedzi: 3 · Wyświetleń: 316

in5ane
Napisane: 2.04.2014, 22:42:30





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Cytat(in5ane @ 2.04.2014, 23:19:40 ) *
[JAVASCRIPT] pobierz, plaintext
  1. var kw = this.val();
[JAVASCRIPT] pobierz, plaintext
?

Pomyłka, dokładniej to:
[JAVASCRIPT] pobierz, plaintext
  1. var kw = $(this).val();
[JAVASCRIPT] pobierz, plaintext
  Forum: Przedszkole · Podgląd postu: #1100221 · Odpowiedzi: 5 · Wyświetleń: 263

in5ane
Napisane: 31.03.2014, 09:51:14





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Z tym, że po co mu to, jeśli on zmianę złota będzie robił tylko w momencie wykonania jakiejś czynności. Więc jeśli chce to bez przeładowania strony, to mój przykład będzie idealny.
  Forum: Przedszkole · Podgląd postu: #1099623 · Odpowiedzi: 63 · Wyświetleń: 3 048

in5ane
Napisane: 17.02.2014, 19:58:27





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Nie powinno się używać czegoś takiego
  1. @$option = $_POST['option'];
Powinieneś zrobić coś takiego
  1. if (isset($_POST['option']))
  2. {
  3. $option = $_POST['option'];
  4. }
  5. else
  6. {
  7. exit(); // czy coś takiego
  8. }
  Forum: Przedszkole · Podgląd postu: #1092271 · Odpowiedzi: 4 · Wyświetleń: 336

in5ane
Napisane: 12.02.2014, 15:03:36





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Cytat(!*! @ 11.02.2014, 11:15:54 ) *
- formularze nie działają jak wyłączę JS
A kto normalny wyłącza JS w przeglądarce. Czy na przykład takie Allegro przejmuje się tym? Nie, ma to gdzieś. Bo dokładnie tyle 0,0000000000000000000000000000000000000000000000001% ludzi ma wyłączony JavaScript w przeglądarkach. Smartphony i tablety też obsługują poprawnie JavaScript.
  Forum: Oceny · Podgląd postu: #1091111 · Odpowiedzi: 24 · Wyświetleń: 4 199

in5ane
Napisane: 8.11.2013, 17:01:59





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

A może ruszysz trochę głową? Mając pętlę w PHP, ciężko przerobić na JS, gdzie składnia jest identyczna? No takie pierdoły, to już można samemu i nawet, jakby Ci nie wychodziło, to za którymś razem by Ci wyszło, a ponadto chyba można w google sprawdzić, jak wygląda składni pętli for w w JS.
  1.  
  2. <title>fgg</title>
  3.  
  4. <img src="maggie.jpg" id="1">
  5. <img src="maggie.jpg" id="2">
  6. <img src="maggie.jpg" id="3">
  7. <img src="maggie.jpg" id="4">
  8. <img src="maggie.jpg" id="5">
  9.  
  10.  
  11.  
  12. var nazwy = new Array('maggie.jpg', 'kate.jpg', 'roxana.jpg')
  13. var obr = [];
  14.  
  15. for (x=0; x<nazwy.length; x++) {
  16.  
  17. obr[x] = new Image();
  18.  
  19. obr[x].alt= nazwy[x];
  20.  
  21. }
  22.  
  23.  
  24.  
  25. for (var i = 1; i <= 5; i++) {
  26.  
  27.  
  28. document.getElementById(i).onmouseover = function() {
  29.  
  30. this.src = obr[1].alt;
  31.  
  32. }
  33.  
  34.  
  35. document.getElementById(i).onmouseout = function() {
  36.  
  37. this.src = obr[0].alt;
  38.  
  39. }
  40.  
  41. }
  42. </body>
  43. </html>
  Forum: Przedszkole · Podgląd postu: #1074465 · Odpowiedzi: 4 · Wyświetleń: 952

in5ane
Napisane: 14.10.2013, 20:48:46





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Cytat(JacobGames26 @ 14.10.2013, 21:42:07 ) *
Ja nie bede komuś płacić. Że sie nie znam to chyba nie każdy to umie? A ja z tym sie bawie od 3 miechów więc ok . ;x

Bawisz się od trzech miesięcy, więc OK? Super, bo połączenia z bazą danych człowiek poznaje i umie obsługiwać po tygodniu nauki. A wracając do tematu, żeby nie robić syfu.
Cytat
błąd #1046 - No database selected
Rozumiesz, co to znaczy po angielsku? Jeśli tak, to chyba wiesz, czego nie zrobiłeś.









P.S.: Musisz wybrać bazę najpierw w phpMyAdmin.
  Forum: Przedszkole · Podgląd postu: #1070225 · Odpowiedzi: 29 · Wyświetleń: 766

in5ane
Napisane: 23.09.2013, 16:51:05





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

index.html
  1. <form action="gotowe.php" method="post"><input type="text" name="imie" /><input type="submit" value="Wyslij" /></form>


gotowe.php
  1. Imie: <?php echo $_POST['imie']; ?>
  Forum: PHP · Podgląd postu: #1066886 · Odpowiedzi: 1 · Wyświetleń: 170

in5ane
Napisane: 24.09.2013, 08:21:25





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Jeśli potrzebujesz kompatybilności wstecznej (tj. IE6, IE7, IE8, IE9), to skorzystaj z CSS3 PIE. Akurat obsługuje border-radius'a.
  Forum: Przedszkole · Podgląd postu: #1066955 · Odpowiedzi: 5 · Wyświetleń: 718

in5ane
Napisane: 23.08.2013, 10:09:47





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

  1. if($zip) echo "Rozpakowano pliki poprawnie.\n";
  2. {
  3. if($prefix AND $nazwa AND $adres) {
  4.  
  5. @mysql_query("INSERT INTO ".$prefix."_viewlevels VALUES (1, 'Public', 0, '[1]');");
  6.  
  7. if($ins) echo "Rekord został dodany poprawnie\n";
  8. else echo "Błąd nie udało się dodać nowego rekordu\n";
  9.  
  10.  
  11. }
  12. }
  13. else echo "BŁĄD nie udało się rozpakować plików!\n";

voilà...
  Forum: Przedszkole · Podgląd postu: #1061910 · Odpowiedzi: 1 · Wyświetleń: 197

in5ane
Napisane: 15.06.2013, 13:28:05





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Próbowałeś kombinować coś w ten sposób?
  1. SELECT *
  2. FROM `grades` AS asd
  3. INNER JOIN `subjects`
  4. ON grades.subjectId = subjects.subjectId
  5. WHERE userId = '1'
  6. ORDER BY 'asd.gradeValue' DESC
  Forum: Przedszkole · Podgląd postu: #1050978 · Odpowiedzi: 3 · Wyświetleń: 301

in5ane
Napisane: 1.06.2013, 16:04:23





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Podaj swój kod tej Twojej strony lub chociaż adres do niej. No na pewno musisz stworzyć dwa takie kontenery (jeden na menu), a drugi na te całą resztę strony. I oba ustawione na float: left;. A co do samego menu (i jego wyglądu), to jak mój poprzednik Ci napisał, lista nieuporządkowana z odpowiednim ostylowaniem.
  Forum: HTML \ XHTML · Podgląd postu: #1048489 · Odpowiedzi: 9 · Wyświetleń: 1 209

in5ane
Napisane: 17.05.2013, 22:56:59





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Coś takiego: http://jsfiddle.net/teTBf/1/ ? Bo ja już przestałem czaić, o co w ogóle Ci chodzi. Tutaj masz wykorzystane pliki graficzne. A jeżeli nie chodzi Ci o button, to masz na DIV'ach: http://jsfiddle.net/teTBf/2/ . Czy takie coś odpowiada?
  Forum: Przedszkole · Podgląd postu: #1045789 · Odpowiedzi: 16 · Wyświetleń: 1 551

in5ane
Napisane: 29.04.2013, 12:51:22





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Nie coś takiego:
  1. <div class="image">
  2. <img src="images/book_elem/UpLeftCorn.png"></img>
  3. </div>
  4. <div class="image1">
  5. <img src="images/book_elem/Up.png"></img>
  6. </div>

Tylko coś na wzór tego:
  1. <img src="upleftcorn.png" style="float: left;" /><img src="up.png" />

Nie potrzebnie ładujesz to w DIV'y, po drugie znacznik <img> nie ma zamknięcia, dlatego domyka się go slash'em na końcu (albo bez tego slash'a), ale coś takiego, jak </img> nie istnieje.
  Forum: Przedszkole · Podgląd postu: #1042036 · Odpowiedzi: 11 · Wyświetleń: 298

in5ane
Napisane: 19.03.2013, 21:56:08





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Ja mam tak i działa:
  1. <link href="<?php echo base_url(); ?>public/css/style.css" media="screen" rel="stylesheet" type="text/css">


@edit: Panie kolego, ja teraz doczytałem. Może problem tkwi w tym, że nie masz zrobionych, nawet w miarę prowizorycznych templatków? Może to przykładowe blog/test nie ma całego kodu (w tym meta tagi), który jest w index.
  Forum: Przedszkole · Podgląd postu: #1033546 · Odpowiedzi: 2 · Wyświetleń: 326

in5ane
Napisane: 27.02.2013, 08:25:18





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

Radziłbym Ci najpierw rozrysować i/lub rozplanować sobie całą aplikację. Następnie weź się troszkę za HTML'a (byle jakiego) i stwórz jakiś wygląd, coś co będzie przypominać Twoją aplikację. Następnie po kolei staraj się wdrążać kolejne moduły (tj. począwszy od logowania i rejestracji) i powiem Ci tak, szukaj gotowych rozwiązań, tzn. tutoriali, żebyś załapywał, o co chodzi. No chyba, że to ma być naprawdę dobry projekt itd., no to musisz się nauczyć języków od strony przeglądarki (tj. HTML, CSS, JavaScript) i język od strony serwera (tj. PHP) i do tego SQL do zarządzania bazą danych (dla każdego początkującego MySQL).
  Forum: Przedszkole · Podgląd postu: #1028765 · Odpowiedzi: 10 · Wyświetleń: 505

in5ane
Napisane: 26.02.2013, 20:28:31





Grupa: Zarejestrowani
Postów: 1 335
Dołączył: 9.11.2005
Skąd: Wrocław

Ostrzeżenie: (10%)
X----

W sumie to jesteś troszkę leń, ale proszę, bo wystarczyło pomyśleć.

  1. <table width="800" border="0" align="center" cellpadding="5" cellspacing="0" class="blackTable">
  2. <tr>
  3. <td class="whiteLink"><?php if($auth->logged()) { ?><a href="./admin.php">Strona główna</a> <span class="whiteSep">|</span> <a href="./admin.php?cmd=settings">Ustawienia</a> <span class="whiteSep">|</span> <a href="./admin.php?cmd=users">Użytkownicy</a> <span class="whiteSep">|</span> <a href="./admin.php?cmd=mail">Wyślij email </a> <span class="whiteSep">|</span> <a href="./admin.php?cmd=logs">Logi</a> <span class="whiteSep">|</span> <a href="./admin.php?cmd=account&amp;option=edit&id=<?php echo $_SESSION['_id']; ?>">Moje konto</a> <span class="whiteSep">|</span> <a href="./admin.php?cmd=ram">Ramówka</a><?php } else { ?>Nie jesteś zalogowany<?php } ?></td>
  4.  
  5. </tr>
  6. </table>
  Forum: Przedszkole · Podgląd postu: #1028654 · Odpowiedzi: 3 · Wyświetleń: 193

2 Stron V   1 2 >

New Posts  Nowe odpowiedzi
No New Posts  Brak nowych odpowiedzi
Hot topic  Popularny temat (Nowe)
No new  Popularny temat (Brak nowych)
Poll  Sonda (Nowe)
No new votes  Sonda (Brak nowych)
Closed  Zamknięty temat
Moved  Przeniesiony temat
 

RSS Wersja Lo-Fi Aktualny czas: 24.04.2024 - 14:16