Jump to content
php.lv forumi

bubu

Administratori
  • Posts

    8,897
  • Joined

  • Last visited

Everything posted by bubu

  1. Ar MySQL >=4.1 versijām jādarbojās caur mysqli_xxx funkcijām, nevis mysql_xxx!
  2. Ja $x0=$y0, tad izpildīsies else daļa. Principā tādā gadījumā ir pilnīgi vienalga, kura daļa izpildās, manuprāt. Nu lab vienīgā mana kļūda ir tas komentārs $x0<$y0 vietā jābūt <=, bet tas jau neko daudz nemaina, kā nekā - komentārs ;)
  3. bubu

    MS Excel&Php

    Ko tu ar to domā - pievienot? Vienkārši uz servera glabāt un ļaut lietotājiem downloadot to, vai kā?
  4. un ko tev izvada šis? echo get_magic_quotes_gpc(); // 1-enabled, 0-disabled
  5. A padomā, ja tu to visu neliec iekš DB, bet glabā/izmanto kā citādi? Tad jau tas magic visus datus sačakarē, ja ievada pēdiņu, vai ne?
  6. -- nozīmē komentāra sākumu, tas tāpēc, lai viss kas tālāk SQL kverijā, lai netiek ņemts vērā, jo nevar jau zināt, kas tur par brīnumiem :) Un šis jau tikai viens piemērs. To injection var veikt daudz veidos. PHP pats pieliek slešus tikai tad, ja ir eneiblētas magic quotes. Kuras neiesaka eneiblēt ātrdarbības dēļ. Citādi php jāiet visiem POST/GET datiem cauri un jāmeklē tās pēdiņas!
  7. SQL injection parasti notiek tad, ja komentāros ievada pēdiņas. Piemēram tev ir jāievada leitotājvārds formā, un tu to salīdzini ar datubāzes ierakstiem: SELECT COUNT(*) FROM tabula WHERE user_name = '$username' Šajā gadījumā, ja tu speciāli neapstrādāsi $username mainīgo, un lietotājs tajā būs ielicis tekstu xxx' OR 1 -- tad skaties par ko būs pārvērties pieprasījums: SELECT COUNT(*) FROM tabula WHERE user_name = 'xxx' OR 1 --' Redzams, ka tiks selektēts jebkas, jo 1 nozīmē TRUE, tātad vienalga vai user_name lauks sakrīt ar to xxx vai nē. No tā var izvairīties diezgan vienkārši - lietojot funkciju - mysql_escape_string(), kura padoto string vērtību pārveidot tādā formā, ka šīs pēdiņas netraucēs pieprasījuma izpildi.
  8. bubu

    2 scripti

    Analgīns, viņš nesaņem 240, bet gan 80! Snadis, un tas koks ir realizējams tikai ar PHP, vai arī var arī pielikt JS, būs lielāka ātrdarbība (nevajadzēs lapu pārlādēt vairākkārt, ja nav daudz izvēļu). Turpretī ja ir liels koks, tad gan labāk tīri ar PHP, kā jau pnp tev parādīja pseido-kodu.
  9. Jopcig! Cik tev gadu? Kāpēc tu domā, ka šeit ir bērnu krāsojamā grāmata!?! Tev hu_ha tak pastāstīja algoritmu, tad nu arī raksti! # dots $x0, $y0 - bildes izmēri # vajag $x, $y - bildes rezultējošos izmērus if ($x0>$y0) { $aspect = $x/$x0; $y = $y0/$aspect; } else { # šo daļu, kad $y0<$x0 atļaušu tev pašam izdomāt!;) } # tagad $x un $y satur izmērus ne lielākus par sākotnējiem $x un $y # un uz kuriem mainot bildi, nemainīsies proporcijas
  10. bubu

    2 scripti

    nja, drīz jau būs jautājumi: iedodiet man skriptu, kurš ... (te projekta apraksts) :) Kas tieši tev nestrādā, es nevaru saprastu. Elementārākus uzdevumus jau grūti izdomāt: $a = array('rinda1', 'rinda2', 'rinda3'); // te ielasīti dati $krasa = 'balta'; foreach($a as $item) { echo "krāsa=$krasa, dati=$item\n"; $krasa = ($krasa == 'balta' ? 'zaļa' : 'balta'); }
  11. Diez vai varēs. Un kam tik daudz jāsarežģī dzīve?
  12. No manuāļa (jeb tev latvisi arī vajadzēs tulkot?): utf8_decode -- Converts a string with ISO-8859-1 characters encoded with UTF-8 to single-byte ISO-8859-1. urldecode -- Decodes URL-encoded string (Decodes any %## encoding in the given string) Un kur tur ir kāds dubult \\ ? Neredzu. Tev es redzu tikai to, ka vienā vietā tu to iso-8859-1 liec pēdiņās, bet otrā vietā neliec.
  13. Tur jau tā nelaime. Visi jaunie php-isti tagad domā, ka vajag uzspļaut datu tipiem, un rakstīt kā pagadās, gan jau php pats 'pareizi' noteiks datu tipu. Bet redz, ne vienmēr tas ir labi un tā vajag.
  14. <?php // ielasi visu failu masīvā no 0..n-1 // sakārto to pēc alfabēta // pārliecinies, ka $lpp ir robežās no 0 līdz (n-1)/5 for ($i = 5*$lpp; $i<5*($lpp+1); i++) { // drukā $i-to ierakstu } ?>
  15. Angļu valodu nezini? Brīdinājums: ksor() sagaida masīvu kā 1. parametru, bet tik nodots vesels skaitlis.
  16. jopcig. $password = "Aate65i0"; if (preg_match("/^[\w\d]{7,10}$/u", $password)) { echo "Parole sastāv no burtiem un/vai cipariem garumaa 7-10"; } else { echo "Parole ir greiza"; } Un ja domā, ka izmantojot sarkanas krāsas lielus burtus tev ātrāk palīdzēs, tad tu maldies.
  17. Heh, tu jau centies IP nomapot uz hostname, ne? Bet ne visām ip tak atbilst hosteims, pareiz? Un vai tik cfunction nav novecojis keywords, ne? ;)
  18. bubu

    Bomber

    Kāpec es lai to zinātu? Es nezinu. Prasi to autoram. Bet ja tas balstītos uz mail() fju, tad diez vai viņš tik labi strādātu <_<
  19. bubu

    Bomber

    Tu jau lieto meilus. sms.id.lv cik zināms tā nedara.
  20. php tu nepareizi saprati. azpage: ja lietotājs ņems un sačakarēs url tā, ka lapai pados: lapa.php?id=blabla tad loģiski, ka nav jēga salīdzināt (un vispār nedrīkst to atļaut!) meklēto id ar tekstu. To arī nodrošina šī rinda: $_GET['ID']=(int)$_GET['ID']; Jo (int) mēģina pārviedot mainīgo par integer tipu, bet tā kā blabla nav integers, tad tā pārveidos to par skaitli 0. Un datubāzes parasti nav ieraksta ar id=0, jo mysql laikam savu auto_increment sāk no 1. Pēdiņas protams arī der SQL teikumos lietot, tad tik vēl jāpieliek klāt addslashes() un būs pavisam ok :)
  21. Kāpēc vajag kautkādas funkcijas? Lieto lapai UTF-8 kodējumu, un tad varēs kautvai vienā laukā savādīt simts un vienā valodā to tekstu.
  22. Kāpēc nav iespējams?
×
×
  • Create New...