Poniższy skrypt:
$imagick = new Imagick(); $imagick->setResolution(150, 150); $imagick->readImage($source_file . '[0]'); $imagick->writeImages($result_file, false);
Wywala błąd:
Fatal error: Uncaught ImagickException: FailedToExecuteCommand `'gs' -sstdout=%stderr -dQUIET -dSAFER -dBATCH -dNOPAUSE -dNOPROMPT -dMaxBitmap=500000000 -dAlignToPixels=0 -dGridFitTT=2 '-sDEVICE=pngalpha' -dTextAlphaBits=4 -dGraphicsAlphaBits=4 '-r150x150' -dPrinted=false -dFirstPage=1 -dLastPage=1 '-sOutputFile=/tmp/magick-pyOYVsKi7i7SAXNMW5EtwPaRASHaOYu5%d' '-f/tmp/magick-cz6OETDf_gRuXDy_HbCTsBN12F0rxl6A' '-f/tmp/magick-i9pxxZG7729nyd99OG23sqQCQHf9iMH6'' (32512) @ error/ghostscript-private.h/ExecuteGhostscriptCommand/74
Rozwiązanie:
doinstalować ghostscript
Zenbox zgłoszenie [#DOPK-2931-RYJH]
Problem:
PHP Warning: Cannot load module "http" because required module "raphf" is not loaded in Unknown on line 0
Rozwiązanie:
sudo apt install php-raphf
Przy próbie utworzenia symlinku na zenbox.pl lub przy próbie sprawdzenia czy plik istnieje (file_exists($file_path)) otrzymuję takie błędy:
Warning: realpath(): open_basedir restriction in effect. File(/home/mojekonto/domains/mojadomena.pl/public_html/system) is not within the allowed path(s): (/home/mojekonto/domains/mojadomena.stronazen.pl:/tmp:/var/tmp:/home/mojekonto/.tmp:/home/mojekonto/.php:/usr/local/php:/opt/alt:/etc/pki) in /home/mojekonto/domains/mojadomena.pl/public_html/index.php
Severity: Warning --> file_exists(): open_basedir restriction in effect. File(https://blog.napraw.to/my_files/files/notes/445/plik_pdf.pdf) is not within the allowed path(s): (/home/mojekonto/domains/mojadomena.pl:/tmp:/var/tmp:/home/mojekonto/.tmp:/home/mojekonto/.php:/usr/local/php:/opt/alt:/etc/pki) /home/mojekonto/domains/mojadomena.pl/public_html/application/views/admin/docs/last_file_preview_view.php 13
Sam nie mogę nic z tym zrobić. Trzeba to zgłosić do supportu zenbox.pl aby wyłączyli zabezpieczenie open_basedir.
Poniżej odpowiedź od nich:
"... powodem problemu zgodnie z komunikatem błędu jest włączone zabezpieczenie open_basedir w obu domenach - aby symlink mógł działać koniecznie jest jego wyłączenie..."
"Czy ja jestem w stanie to zrobić samodzielnie?"
"Niestety nie, to się wykonuje na poziomie administracji serwerem."
Na serwerach cyberfolks.pl domyślnie działa połączenie przez IPv6 przez co nie da się pobierać plików z niektórych serwerów:
wget -c https://cdn1.midocean.com/image/700X700/mo9996-13.jpg
--2023-05-24 14:23:26-- https://cdn1.midocean.com/image/700X700/mo9996-13.jpg
Resolving cdn1.midocean.com (cdn1.midocean.com)... 2600:9000:26de:c000:14:1179:cb80:93a1, 2600:9000:26de:c00:14:1179:cb80:93a1, 2600:9000:26de:5200:14:1179:cb80:93a1, ...
Connecting to cdn1.midocean.com
Należy wymusić wówczas transmisję po IPv4:
wget --inet4-only -c https://cdn1.midocean.com/image/700X700/mo9996-13.jpg
Jeśli korzystamy z pobierania przez file_get_contents() polecenie powinno wyglądać tak:
file_get_contents($image_url, false, stream_context_create(['socket' => ['bindto' => '0:0']]))
Źródło: https://twitter.com/McSodbrenner/status/773540936764821504
aptitude install php-cli php-mailparse
wkhtmltopdf --print-media-type --header-html header.html --footer-html footer.html https://google.pl/ google.pdf
$serverName = "serverName"; $connectionInfo = array( "Database"=>"DbName", "UID"=>"UserName", "PWD"=>"Password", "Encrypt"=>true, "TrustServerCertificate"=>true); $conn = sqlsrv_connect( $serverName, $connectionInfo);
Źródło: https://stackoverflow.com/questions/14959492/connecting-to-mssql-from-php-securely-with-encryption
add-apt-repository ppa:ondrej/php -y apt-get update apt-get install aptitude vim mc nmap curl apache2 php php-dev php-xml php-pear apt-get install unixodbc-dev sudo pecl install sqlsrv sudo pecl install pdo_sqlsrv printf "; priority=20\nextension=sqlsrv.so\n" > /etc/php/8.1/mods-available/sqlsrv.ini printf "; priority=30\nextension=pdo_sqlsrv.so\n" > /etc/php/8.1/mods-available/pdo_sqlsrv.ini phpenmod -v 8.1 sqlsrv pdo_sqlsrv curl https://packages.microsoft.com/keys/microsoft.asc | apt-key add - curl https://packages.microsoft.com/config/ubuntu/$(lsb_release -rs)/prod.list > /etc/apt/sources.list.d/mssql-release.list sudo apt-get update sudo ACCEPT_EULA=Y apt-get install -y msodbcsql18 sudo ACCEPT_EULA=Y apt-get install -y mssql-tools18 echo 'export PATH="$PATH:/opt/mssql-tools18/bin"' >> ~/.bashrc source ~/.bashrc sudo apt-get install -y unixodbc-dev service apache2 restart
HTML
<div class="new-page"></div>
CSS
@media print { .new-page { page-break-after: always; } }
lub bezpośrednio w HTML
<div style="page-break-after: always;"></div>
Ważne!
Znacznik "new-page" nie może być wewnątrz znacznika <section> bo nie zadziała.
Czasami (np.: na serwerach CyberFolks) trzeba dodaj w komendzie --print-media-type
wkhtmltopdf --print-media-type http://domena.pl/file.html file_pdf.pdf
Przy próbie połączenia przez CURL z Cyber Folks do Zenbox pokazuje się błąd.
"Please wait while your request is being verified..."
"500 Internal Server Error openresty".
Trzeba to zgłosić do Zenboxa, żeby odblokowali IP serwera źródłowego na firewallu.
https://panel.zenbox.pl/index.php?m=pomoc&page=show-ticket&id=1098515
[#QJIV-9351-ECMM] - ticket z 2024.01.11 nr 1314686
Tools -> Options -> Editor -> Formatting
Language: All languages
Line wrap: Anywhere
[Apply]
Źródło: https://smallbusiness.chron.com/wrap-lines-netbeans-49331.html
$string = 'Abc def ghi'; if (strpos($string, 'def') !== false) { echo 'True'; } else { echo 'False'; }
SyntaxError: JSON.parse: unexpected character at line 1 column 1 of the JSON data
Rozwiązanie:
wgraj nową wersję pliku UploadHandler.php i skasuj wszystkie foldery upload użytkowników.
background-color: #f2f4f7 !important;
Źródło: https://stackoverflow.com/questions/25118343/wkhtmltopdf-div-background-color
sudo update-alternatives --set php /usr/bin/php7.4
ob_start(); var_dump($data); $result = ob_get_clean();
Gmail nie pozwala na dostęp z "mniej bezpiecznych aplikacji" jaką jest php-imap.
Żeby zezwolić na ten dostęp należy:
1. Zalogować się na swoje konto - https://accounts.google.com
2. Zezwolić na dostęp mniej bezpiecznych aplikacji - https://myaccount.google.com/lesssecureapps
3. Zezwolić swojej aplikacji na dostęp do konta - https://accounts.google.com/b/0/DisplayUnlockCaptcha
<?php header('Location: http://google.pl/'); ?>
Remove "table-responsive" class from your HTML.
<div class="box box-text table-responsive"> <div class="box-header text-center"> <h3 class="box-title">Zrealizowane zadania </h3> </div>
$raw_string = preg_replace('/\n\r+/', ' ', $raw_string); // Replace one or multiple new lines with one space:`
$raw_string = preg_replace('/\s+/', ' ', $raw_string); // Replacing multiple spaces with a single space simple single line of php code: