Reklama
Nepřihlášený uživatel | Zaregistrovat se
 

Téma:

Počítače a InternetVývoj software

Spravuje:

hkmaly

Může vás zajímat



Reklama


PHP


spolumoderuje harry_x

Prosíme o několik drobných laskavostí:

  • před položením dotazu zkuste zapátrat v dokumentaci. Nikomu se nebude chtít formulovat znova a znova tytéž odpovědi, které již dříve a mnohem lépe napsal někdo jiný.

    Konkrétně návod k instalaci PHP na sebeobskurnejsich platformach se nachází zde.

    Dalším užitečným zdrojem informací o PHP, PHPLIB, ale i spouste jinych veci mohou být stránky Jirky Koska.

    mnohe casti oficialniho manualu k PHP jsou jiz prelozeny do cestiny, zacit muzete zde

    Mnoho otázek k instalaci je zodpovězeno na této stránce.

    A v neposlední řadě se dá zkusit i vyhledávací formulář na této stránce (napravo od formuláře pro odesílání příspěvků).

  • Dodržujte prosím téma, kterým je výhradně programování v jazyce PHP.
    Pokud se kupříkladu Váš dotaz týká pouze databází, zkuste raději klub "SQL".
    Pokud se týká javascriptu, zkuste klub javascript.

  • nepokoušejte se zvýrazňovat své příspevky přebytečnými html značkami. kdyby to dělali všichni, výsledek by se nedal číst. proto budou graficky přespříliš kreativní příspěvky odmazávány.

  • Nadávání off-topic přispěvatelum přenechte moderátorovi klubu.

  • Pokud na Vaši otázku nikdo neodpovídá, nejspíše byla položena tak nešťastným zpusobem, ze na ni při nejlepší vuli nelze odpovědět. Druhá možnost je, že nikdo neví. Každopádně si nijak nepomůžete, budete-li se odpovědi domáhat jejím opakováním provázeným verbální agresivitou.

  • Pokud navzdory výše uvedenému opravdu myslite, ze sem musite neco napsat, zkuste ještě najít odpověď na váš dotaz na www.google.com

  • Tento klub není určen pro příspěvky typu "mám nové stránky v PHP, prosím otestujte mi je" - k tomu, aby člověk našel chybu v jakékoli aplikaci, nemusí být programátor. K podobným žádostem prosím použijte raději obecnější kluby jako www.

Bez výstrahy budou mazány příspěvky, jejichž autoři předchozí řádky očividně ignorovali.
Tato pravidla jsou šita na míru pokročilejším uživatelům, bez jejichž přítomnosti by vaše dotazy mnohdy zůstaly nezodpovězeny.

Připomínky k výše uvedenému akceptuji pouze prostřednictvím interní okouní pošty.

Poznámka: vzhledem k záplavě spamů byl anonymům zakázán zápis a asi to tak nějakou dobu vydrží.

Mesic PHP bugu sice uz dozuril, ale nalezene chyby jeste nebyly opraveny ...


Mastodont  
Cywe .... mám v Postgre sloupec typu datamultirange, když do něj zapisuju normálně, čili

INSERT INTO … VALUES( ..., ARRAY[datemultirange(daterange('2020-04-07', '2020-04-09', '[]'), daterange('2020-08-12', '2020-08-26', '[]'))] … )

tak všechno funguje. Ale jako prepared statement v pg_execute() to prostě nejde. S touhle ARRAY syntaxí mě driver pošle do P a chce syntaxi s "{ … }". Zkoušel jsem asi 10 různých tvarů zápisu a ani prd. Neví někdo?
 
 
violetelephant グッバイ、ミスターティーポット 
tak to ze muj prazsky byt je nekde pobliz kromerize me prestalo prekvapovat uz davno :D
Mastodont  
No hlavně to budou asi adresy proxyn, ne?
 
matahl z Magea 
myslim ze nic extra presneho nedostanes - kdyz si vezmu i mensiho providera, ktery ma nekolik desitek verejnych ip adres. Rozda je klientum na jejich pripojky, pak nejaky klient skonci, jeho IP adresa se da jinemu zakaznikovi (v sousedni vesnici, meste) - takze lokace ip adres se muze menit i docela casto. Myslim ze presne to lze mit jen na zaklade celych tech pridelanych bloku - provider dostane blok adres, ktery je svazany s jeho adresou. Ale jakmile ty adresy zacne rozdavat tak nikdo krome neho nevi kde jakou z nich pouzil
eso Lupus portat epistolam ad mutuas janitor 
S jakou IP geolocation API máte nejlepší zkušenosti pro české ip adresy?
(mám tím na mysli api, do které pošlete IP adresu a vrátí vám předpokládanou polohu počítače, kde se ta IP nachází, nejlépe s názvem města a PSČ)

Používám https://freegeoip.app/json/

Klientovi se nelibí přesnost výsledků, (i když jsem ho na začátku varoval, že se na to spoléhat nedá), zkoušel jsem některé komerční, co mají online demo a výsledek není o moc lepší.

 
matahl z Magea 
Jen pro informaci - je to blbost ale jeste jsem tam narazil pri pouziti kurzoru SQL_CUR_USE_ODBC u funkce odbc_connect na jednu vec (komunikuji proti nejakemu mssql 2017) - jakmile v nejakem dotazu clovek udelat select * from table where .... tak to jde do kopru (ne ze bych byl takove prase a pouzival takove dotazy, ale obcas mam tabulku ve ktere je pet sloupcu a vim ze je vsechny potrebuju, tak je jednodussi napsat * nez je vyjmenovavat). V logu se objevi chyb: ... cursor is in invalid state.. 2400... To by az tak nevadilo, ale ono to zblbne vsechny nasledujici dotazy do databaze. Jedine co pomuze je po tom spatnem dotazu pouzit odbc_free_result
violetelephant グッバイ、ミスターティーポット 
tak jiste, kdyby opravili vsechny numericky typy, asi by jim to nikdo nevycital a vzali to jako behavior change (a imo by to bylo kozistentni s ostatnima pdo), ale oni opravili jeden a ostatni zustali jako stringy. jak velkej musi by clovek amater, aby udelal takovej fix, nad tim nema smysl premyslet.
Mastodont  
Ano. A asi těch lidí bylo fakt hodně, když kvůli tomu urychleně vydali novou minor verzi.
violetelephant グッバイ、ミスターティーポット 
z toho mi vychazi ze celou dobe to bylo blbe, protoze byl nekdo linej, pak se to pokusili opravit (ale jen napul), coz vedlo k tomu, ze to rozbilo kod spouste lidi, takze to vratili.
Mastodont  
Používáte PDO vůči Postgre? Problém ... (fix z 8.0.5 zrušen v 8.0.6)

https://bugs.php.net/bug.php?id=80892
 
Mastodont  
Aha, dík.
matahl z Magea 
To byl letity skript takze tam nebylo nic - pouzila se nejaka defaultni hodnota. Ony ty skripty zacinaly vzdy tim, ze se jen sem tam melo neco ulozit/nacist z databaze -> jednotky polozek. To fungovalo v pohode. Problem zacal kdyz zacaly jakmile se zaclo hrat s desitkama tisic zaznamu...
A měl jsi tam co?
matahl z Magea 
nedelalo... I kdyz jsem mel toto:
$tmp = '';
$q1 = db_query("select top 1000 ID, SkupZbo, Regcis, MJEvidence, SazbaDPHVystup  from TabKmenZbozi ");
while($db = db_results($q1)) {
  // do nothing
}

tak to bylo porad pomale. Problem je hned u funkce odbc_connect, ctvrty parametr je $cursor_option - kdyz v tomto pripade pouziju SQL_CUR_USE_ODBC tak mam zpet 40000 vysledku za cca 15 vterin - doba od zavolani skriptu az do chvile kdy se mi na monitoru zobrazi 40000 radku (ta data maji dve mega coz udela taky trochu zdrzeni)
A nedela to to patlani do retezce?
matahl z Magea 
tak uz nic.. uzke hrdlo nalezeno a problem vyresen...
 
matahl z Magea 
PHP a mssql
Nekomunikujete tu nekdo z PHP s MSSQL databazi? Mam par zakazniku kde bezi Helios, ktery pouziva mssql a bezi typicky na Windows serveru. K nemu se pripojuji z hostingu (typicky FreeBSD kde bezi FreeTDS a unixODBC pro spojeni s MSSQL databazi). Komunikace funguje v pohode, ale narazim na problemy s vykonem. Delaji se ruzne exporty z a do eshopu - napr. skladova dostupnost. Vezmu sql dotaz, pustim v management studiu a za dve vteriny mi vrati 40 000 zaznamu (u kazdeho cca 5 sloupcu s ciselnyma hotnotama). Kdyz ten sql dotaz udelam na tom FreeBSD serveru pomoci utility tsql (soucast baliku FreeTDS) nebo isql (soucast baliku unixODBC) - mam vysledky take behem par vterin.

Ale kdyz udelam primitivni skript v php kde po nem chci vice zaznamu:
$tmp = '';
$q1 = db_query("select top 1000 ID, SkupZbo, Regcis, MJEvidence, SazbaDPHVystup  from TabKmenZbozi ");
while($db = db_results($q1)) {
    $tmp .= "$db[RegCis];$db[SkupZbo];$db[ID];$db[SazbaDPHVystup],$db[MJEvidence]";
}
echo $tmp;

Tak pres ty unix utility to bezi vterinu a vypise se mi 1000 vysledku. Ale kdyz to pustim vyse vypsanym skriptem (kam si dam vypisovat cas), skript bezi pres 15 vterin. Zkusil jsem to ocesat na dren a v te smycce ani nic neprovadim (proste se jen zeptam databaze na 1000 zaznamu a pak s nima nic nedelam) - opet 15 vterin. Nekde je v PHP uzke hrdlo, ale nemuzu najit kde. Neresil nekdo podobny problem?
 
Zkoušel někdo z vás psát v Zephiru?

https://zephir-lang.com/en
 
spic už jen wtf 
Mě to taky nepřekvapuje, spíš mě překvapilo, že to někdo použil v metodě, která měla vracet boolean :)