Zend framework lucene UTF-8 problem

I had issues with the zend framework and its implementation of lucene. It saved the values from my UTF-8 database in the lucene files with characters like UTF-8 in ISO 8859-1 like on the search result page. And I wasn’t able to search case insensitive.

I noticed that the apache header (zend server CE) wasn’t sending UTF-8. So I added AddDefaultCharset utf-8 to my httpd.conf. Didn’t help.

What helped: In the Bootstrap.php adding to the init of the search

Zend_Search_Lucene_Analysis_Analyzer::setDefault(new Zend_Search_Lucene_Analysis_Analyzer_Common_Utf8());
Zend_Search_Lucene_Search_QueryParser::setDefaultEncoding('utf-8');
Zend_Search_Lucene_Analysis_Analyzer::setDefault(new Zend_Search_Lucene_Analysis_Analyzer_Common_Utf8_CaseInsensitive());

In the model it is needed to decode it to ISO 8859-1 and than save it as UTF-8. Sounds insane, but it was the only thing that works for me.

$doc->addField(Zend_Search_Lucene_Field::Text('lucene_DB_CLOUMN_NAME',utf8_decode($db_apater_result['DB_CLOUMN_NAME']),'UTF-8'));

WTF Zend Lucene!

Tags: , , , , , , , , ,

Compare batch

my script for quick comparing. Sometimes easier than using winmerge.

@echo off
diff -u 1.txt 2.txt > 12.diff
start /B C:\Programme\TortoiseSVN\bin\TortoiseUDiff.exe /patchfile:12.diff

Tags: , , , ,

JQuery Ajax cross domain request

If you try to do an ajax request on a different domain. You’ll get nothing. Looking a bit deeper into the request I noticed that the status code isn’t 200 or 403 nor 404 like expected. Nope it is 0. (jquery ajax statusCode 0). This means the browser doesn’t allow a crossdomain request. The easiest way for me to solve this was to create a proxy php script. Now I can send my ajax request to a url on my server while the PHP script does the real request to the other server.

This is the php script

/**
* GetFromHost()
*
* @param string $host
* @param int $port
* @param string $path
* @param string $referer
* @param bool $keepalive
* @return
*/
function GetFromHost($host, $port, $path, $referer,$keepalive=false) {

 $fsocket = fsockopen($host, 80, $errno, $errstr, 30);

 if($fsocket){
 $request =     "GET $path HTTP/1.1\r\n";
 $request .= "Host: $host\r\n";
 $request .= "Referer: $referer\r\n";
 $request .= 'User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.2.1) ';
 $request .= "Gecko/20021204\r\n";
 $request .= 'Accept: text/xml,application/xml,application/xhtml+xml,';
 $request .= 'text/html;q=0.9,text/plain;q=0.8,video/x-mng,image/png,';
 $request .= "image/jpeg,image/gif;q=0.2,text/css,*/*;q=0.1\r\n";
 $request .= "Accept-Language: en-us, en;q=0.50\r\n";
 //$request .= "Accept-Encoding: gzip, deflate, compress;q=0.9\r\n";
 $request .= "Accept-Charset: ISO-8859-1, utf-8;q=0.66, *;q=0.66\r\n";
 if($keepalive==true){
 $request .= "Keep-Alive: 300\r\n";
 $request .= "Connection: keep-alive\r\n";
 }
 else
 {
 $request .= "Connection: close\r\n";
 }
 //$request .= "Content-Type: application/x-www-form-urlencoded\r\n";
 //$request .= "Content-length: ". strlen($data_to_send) ."\r\n";
 $request .= "\r\n";
 //$request .= $data_to_send;

 fputs($fsocket, $request);

 $res ='';
 while(!feof($fsocket)) {
 $res .= fgets($fsocket, 1024);
 }
 fclose($fsocket);

 return $res;

 }
 else
 {
 return false;
 //echo "Fehlgeschlagen: ".$fsocket . $host .':'. $port;
 }

}

$x = GetFromHost("www.example", "80", "/deep/url/kinda/", "");
$x = explode('Content-Type: text/html',$x);
$output = preg_replace('/\s+(\r\n|\r|\n)/', '$1', $x['1']);//remove white space and tabs at the line ends
echo $output;

maybe you have to edit the explode part for server to separate the header fom the real content.

Tags: , , , ,

Scroll console output on FreeBSD

People coming from Linux will find that they can’t scroll back through the console output the same way on FreeBSD.

In FreeBSD you need to press “Scroll Lock” and use the arrow keys, PageUp and PageDown to be able to scroll backwards and forwards the console output. To go back to the prompt press “Scroll Lock” again.

Tags: , ,

RedDot release page without plugin but in the page

Today I had the issue to release a page without able to access the file system and creating a plugin for that which would be nicer.  But it also works inside the content template class. it is no ideal, but it works and reloads the page.

<script language="javascript">
function release_page(){
	location.href='ioRD.asp?Action=ReleasePage&EditLinkGuid=<%PageGUID%>';
	location.reload();
	return  true;
}
</script>

<a href="#" onclick="release_page();"><img border="0"  src="Icons/Release.gif"></a> release snippet

Tags: , ,

Building 2.3.12 beta

./configure –prefix=/opt/apache2 –enable-pie –enable-mods-shared=all –enable-so –disable-include –enable-deflate –enable-headers –enable-expires –enable-ssl=shared –enable-mpms-shared=all –with-mpm=worker –enable-rewrite –with-z=/home/mario/apache24/httpd-2.3.12-beta/srclib/zlib –enable-module=ssl –enable-fcgid
make
sudo make install

 

cd ../fcgid
APXS=/opt/apache2/bin/apxs ./configure.apxs
make
sudo make install

IE 8 tabs schließen sich direkt nach dem öffnen

Auf dem Firmen PC welchen ich bekommen hatte, konnte ich keine neuen Tabs öffnen. Beim Klicken auf das Symbol ging der neue Tab gleich wieder zu.  Da der IE 7 installiert war, habe ich den IE 8 heruntergeladen, installiert: Immer noch das gleiche Problem. IE 9 ging nicht, weil auf dem Komposter nur XP installiert war. Googeln brachte auch nix zu Tage weder in englisch noch deutsch. Admin angerufen und gefragt, was ich tun soll. Er :”mach mal die Systemsteuerung auf und dann klick auf Software. Aha, nur net 4 installieren” ??? Was meinte er? Achso, DOT NET 4 installiert, weil er der Meinung war, dass der IE davon abhinge. Geglaubt habe ich das nicht, aber da das nicht MEIN Rechner  ist, habe ich das gemacht. Dann hat sich etwas später auch gleich das Windows update gemeldet. SP1 und Language pack SP 1 für .NET 4.  Ätsch. danach lief es immer noch nicht.  In der Zwischenzeit hat ich die Startseite des IE schon verändert, so dass gleich 5 Tabs beim Start aufgehen, damit ich nicht komplett auf Tabs verzichten mußte.

Eine Idee kam mir dann heute nach 3 Tagen endlich. Den IE mal ohne Addons starten. Wer weiß, was die Leute die vor mir den PC benutzt haben so alles installiert haben… es waren immerhin 4 + Admin Profile zu finden + mein eigenes. Also Start –> Ausführen –> iexplore.exe -extoff siehe das geht. Wunder oh Wunder! Also alle Addons deaktiviert und nach einander wieder eingeschaltet. Die Developer Toolbar für Internet Explorer war der schuldige Kandidat. Warscheinlich, hat jemand wieder einmal die nicht gepatchte installation CD von XP genommen. Der nächst Beste hat dann für den IE 6 die Toolbar installiert. Crap! Der IE 7 und IE 8 bringen aber unter der F12 Taste eigene Entwicklertools mit sich.  Irgentwo haben sich jene gebissen.  Danke an den Admin für die veraltete Installation. Zweitens danke an den jenigen, der die Developer toolbar installiert hat.  –> So kann ich net arbeide!

Tags: , , ,

compile mariaDB win64 with VC9 express

win\configure WITH_INNOBASE_STORAGE_ENGINE WITH_PARTITION_STORAGE_ENGINE WITH_ARCHIVE_STORAGE_ENGINE WITH_BLACKHOLE_STORAGE_ENGINE WITH_FEDERATED_STORAGE_ENGINE __NT__ CYBOZU WITH_EMBEDDED_SERVER

win\build-vs9_x64

Open MySql.sln

Switch to Release.

Run ALL_BUILD  && Grab some food and wait.

 

my question: Where are the binaries after compiling?? (build “install” fails)

burger ranking USA

Platz 1: Fatburger: Super saftiger Burger mit vielen guten Zutaten. *sabba*
Platz 3: Burgerking wie bei uns.
Platz 3: Jack in a Box (hier oft: gag (kotzen) in a box genannt wird). Der Burger schmeckt aber wie von Muttern gemacht ich fands gut.
Platz 5: In and out burger (übelster Milchshake  des Lebens (nie wieder), aber die Burger waren ok). ich würde sagen Mc Donalds Niveau.
Platz 5: Mc Donalds wie bei uns.
Platz 6: Wendys : Abartig! Ich hatte den Single with Cheese. Ich gehe da nicht wieder hin.

the Counter kommt noch.

Arby’s

Taco Bell

Hooters

Tags: , ,

configure apache 2.3 build

./configure –prefix=/opt/apache2 –enable-pie –enable-mods-shared=all –enable-authn-dbd –enable-so –disable-include –enable-deflate –enable-headers –enable-expires –enable-ssl=shared –enable-mpms-shared=all –with-mpm=worker –enable-rewrite –with-z=/home/mario/apache24/httpd-2.3.11-beta/srclib/zlib –enable-module=ssl –enable-fcgid

for fcgid

APXS=/opt/apache2/bin/apxs ./configure.apxs

Tags: , , , ,