Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> moj pierwszy skrypt, ocena
Home
post
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 27.09.2006

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


Witam, php studiuje od ok 2 tygodni. Napisalem skrypt, ktory ma mi slozyc jako cos ala newsy. Czyli na jednej stronie 5 niepelnych artykolow a jak sie kliknie na [wiecej] to sie caly jeden dany art pojawia. Prosze o delikatna ocene.
  1. <?php
  2. if(ereg("^[0-9]", $id)){ //caly text
  3.  
  4. $query = "SELECT * FROM dzialy WHERE temat_id=".(int)$_GET['id'];
  5.  
  6. $result = mysql_query($query)
  7. or die(mysql_error());
  8.  
  9. if(mysql_num_rows($result) == 0) { 
  10. echo "404: Nie znaleziono strony";
  11. }
  12.  
  13. while($row = mysql_fetch_array($result)){
  14. echo($row["temat_text"]);
  15. }
  16. }
  17.  
  18.  
  19. if(ereg("^[0-9]", $strona)){ //kawalki teksow po 5 sztuk na strone
  20.  
  21. $limitstron = 5;
  22.  
  23. $wynik = (($strona * $limitstron) - $limitstron);
  24.  
  25.  
  26. $sql = mysql_query("SELECT * FROM dzialy LIMIT $wynik, $limitstron");
  27. $total_results = mysql_num_rows($sql);
  28.  
  29.  if(mysql_num_rows($sql) == 0){ 
  30. echo("404: Nie znaleziono strony"); 
  31. }
  32.  
  33. while($row = mysql_fetch_array($sql)){
  34.  
  35. echo $row['temat_text']."<br />"; //+kawalek kodu ktory skraca wyswietlanie teksu do np. 500 znakow
  36. //+link [wiecej...]+$id -odnosnik do calego teksu
  37. }
  38.  
  39.  
  40. $total_results = mysql_result(mysql_query("SELECT COUNT(*) as all FROM dzialy"),0);
  41.  
  42. //tutaj reszta kodu pokazujaca linki do nastepnych stron...
  43.  
  44. }else{
  45. $strona =1;
  46. }
  47. ?>


Nie pokazalem calego kodu bo jest to zbedne. Chodzi mi glownie o to czy jest to w miare poprawnie napisane, i czy z tym kodem moze mi ktos jakis syf wpisac w zmiennej i zaszkodzic w bazie danych.
dodam ze calosc mi bardzo dobrze dziala

Ten post edytował Home 28.09.2006, 18:07:56
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Prph
post
Post #2





Grupa: Zarejestrowani
Postów: 338
Pomógł: 2
Dołączył: 4.03.2006
Skąd: Łódź

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


Witam,

Jak na 2 tygodnie, to nie jest zle. Ogolnie calkiem poprawnie. Mam male uwagi do napisow:

  1. <?php
  2. echo("404: Nie znaleziono strony");
  3. ?>


Cudzyslow (") sluzy bardzo do podstawiania zmiennych, a nie generowania napisu. Lepiej w tym miejscu uzywac pojedynczego cudzyslowu ('):

  1. <?php
  2. $i = 5;
  3.  
  4. echo "Ola ma $i gruszek";
  5.  
  6. echo 'Ola ma 5 gruszek';
  7.  
  8. // Polaczenie zmiennej i napisu:
  9.  
  10. echo 'Ola ma ' . $i . ' gruszek';
  11. ?>


Chodzo przede wszystkim o szybkosc. W Twoim przypadku nie ma to znaczenia, ale generowanie duzej ilosci napisow przez podstawianie moze zwolnic cala aplikacje.

Kolejna rzecz - sprawdzanie czy $id jest liczba. Moze lepiej napisac funkcje:

  1. <?php
  2. function is_decimal($value)
  3. {
  4. return (strval(intval($value)) == $value);
  5. }
  6. ?>


Zawsze to mnie pisania w warunkach, a ponadto to wydaje sie lepsze.

Pozdrawiam, Adrian.
Go to the top of the page
+Quote Post

Posty w temacie


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: 3.10.2025 - 04:02