language detection

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Junior Software Developer (HBO / WO)

Functie omschrijving Voor een leuke opdrachtgever zijn wij op zoek naar een Junior Software Developer! Sta jij aan het begin van je carrière en heb je net je HBO of WO-diploma in de richting van ICT of Techniek mogen ontvangen? En heb jij grote affiniteit met software development? Dan hebben wij bij Jelling IT Professionals de perfecte opdrachtgever in de omgeving van Hoofddorp. Binnen deze functie vervul je een onsite learning programma waarbij je aan de slag gaat met PHP en Laravel. Hierbij ben je voornamelijk werkzaam op verschillende klantlocaties en is het jouw taak om hun wensen en eisen

Bekijk vacature »

Freelance Fullstack Java Developer

Functieomschrijving Voor een opdrachtgever in omgeving Rotterdam zijn wij op zoek naar ervaren Fullstack JAVA Developers die graag op projectbasis willen werken. Je komt terecht bij een informele developers club die mooie projecten uitvoeren voor grote klanten. Ben je een ervaren freelancer of werk je in loondienst en ben je toe aan een nieuwe uitdaging? Lees dan snel verder want wie weet is dit een leuke vacature voor jou! Het fijne van deze werkgever is dat je zelf mag beslissen hoe je te werk wilt gaan. Wil je als freelancer werken dan is dat OK. Wil je de zekerheid hebben

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Fullstack developer - medior

Functie omschrijving Ben jij toe aan een nieuwe uitdaging en zou jij graag bij een platte maar informele organisatie willen werken? Voor een mooi softwarebedrijf in omgeving Ridderkerk zijn wij op zoek naar versterking voor op de afdeling Software Development! Als Fullstack developer wordt je bij dit bedrijf onderdeel van de volledige ontwikkeling van requirement tot oplevering! Werkzaamheden Jouw focus ligt op de front end en alles wat daarbij komt kijken. Je gaat ontwerpen, ontwikkelen, testen en valideren. Je zult voornamelijk werken met React.js en Typescript. Maar ook Javascript, HTML en CSS komen aanbod. Daarnaast zal je ook regelmatig met

Bekijk vacature »

Software Ontwikkelaar C# .NET

Functie omschrijving C# .NET Developer gezocht. Ben jij een full stack developer die op zoek is naar een nieuwe uitdaging binnen een leuk snel groeiend bedrijf? Lees dan snel verder! Wij zijn op zoek naar een Developer met ervaring op het gebied van .NET die een organisatie in de regio Amersfoort gaat versterken. Jij gaat je binnen dit bedrijf vooral bezighouden met het verbeteren van de functionaliteiten van hun dataplatform. Samen met andere ontwikkelaars denk je mee in oplossingsrichtingen, architectuur en nieuwe technologieën. Bedrijfsprofiel De organisatie waar je voor gaat werken heeft een onafhankelijk dataplatform ontwikkelt voor de agrarische sector.

Bekijk vacature »

Software Developer Mendix / Maatschappelijk Betrok

Dit ga je doen Het bouwen van de Mendix applicaties in samenwerking met jouw team of zelfstandig; Werken met Scrum methodiek; Ontwikkelen van vooruitstrevende oplossingen; Meedenken over nieuwe applicaties en ontwikkelingen; On the job eigen maken van de Mendix omgeving. Hier ga je werken Deze dynamische en snelgroeiende organisatie begeeft zich in de recyclingbranche. Zij nemen op duurzame en efficiënte manier de recycling op zich. Vanwege hun snelle groei zijn zij op zoek naar een young professional die zich graag wilt ontwikkelen als Mendix Developer. Je komt te werken binnen een IT team van +/- 15 medewerkers. Het huidige ‘vaste’

Bekijk vacature »

Fullstack developer

Zie jij mogelijkheden om onze tooling technisch te verbeteren en uit te bouwen? Over Jobmatix Jobmatix is een innovatieve en internationale speler op het gebied van jobmarketing. Onze jobmarketing automation tool helpt organisaties bij het aantrekken van nieuw talent door vacatures digitaal, geautomatiseerd en op een efficiënte manier te adverteren en onder de aandacht te brengen bij de doelgroep op 25+ jobboards. Volledig performance-based, waarbij organisaties betalen op basis van cost per click of cost per applicant. Maandelijks wordt onze jobmarketing automation tool al gebruikt door vele directe werkgevers, intermediairs en mediabureaus, waaronder Picnic, Rijkswaterstaat, AdverOnline, Schiphol, DPA, Teleperformance en

Bekijk vacature »

Back end developer Python, PHP

Functie Jij als full stack ontwikkelaar zult komen te werken samen met 1 PHP ontwikkelaar een PO en een flexibele schil aan ontwikkelaars . Samen ga je ervoor zorgen dat de huidige producten doorontwikkeld worden. De marketplace is geschreven in PHP Laravel en in de front end React. De roostersoftware is ontwikkeld in Python in combinatie met React in de front end. Jij zult voornamelijk (lees 75%) werken aan de roostersoftware. Momenteel ligt de uitdaging in het feit dat de roostersoftware breder schaalbaar moet worden zodat het voor meerdere flexwerkers ingezet kan worden. Verder willen ze financiële koppelingen gaan maken

Bekijk vacature »

Senior C# Software Ontwikkelaar te Zaandam

Bedrijfsomschrijving Deze werkgever heeft als missie om haar klanten op ICT-gebied volledig te ontzorgen. Ze zijn een ICT bedrijf met een verscheidenheid aan ICT oplossingen waaronder Cloud oplossingen en een groot deel van het werk is gericht op software realisatie. Voor de Enterprise-klanten voert het relatief kleine ontwikkelteam waar jij deel uit van kan gaan maken binnen deze organisatie te Zaandam de grootste opdrachten uit. Niet alleen websites en complexe webapplicaties maar ook mobile apps, web services en complete systeemintegraties! Je moet dan denken aan Dynamics, Sharepoint en Salesforce. Je komt hier terecht in een relatief kleine organisatie met ontzettend

Bekijk vacature »

Ervaren Full stack developer

Functie omschrijving Ben jij op zoek naar een uitdagende in-house functie bij een bedrijf met enorme groeipotentie? Ben jij op zoek naar een nieuwe uitdaging vol afwisseling en gezelligheid? Dan ben je bij dit bedrijf aan het juiste adres! Wij zijn in omgeving Breda op zoek naar een ervaren full stack developer. Je gaat werken voor een zeer gewilde werkgever met goede arbeidsvoorwaarden. Je krijgt een plekje in het jonge IT team, work hard, play hard is hier duidelijk het motto! Jouw werkzaamheden zien er als volgt uit: Jij bent verantwoordelijk voor het ontwerpen en bouwen van webapplicaties. Je bent

Bekijk vacature »

Medior C# Developer

You'll build modern applications for Coolblue's back office. We have a lot of friends, and they crave well-structured data and user-friendly, task-focused applications. How do I become a Medior C# Developer at Coolblue? You regularly participate in brainstorm sessions about user experience, data, and task flow with the UX Designer, Product Owner, and Data Scientists in your team. Besides that you will create disconnected, highly congruent, and testable code that can easily be maintained and is future-proof. Want to become C# Developer at Coolblue? Read below if the job suits you. You enjoy doing this Working with various types of

Bekijk vacature »

Senior Front-end developer (React)

Functie Met een ontwikkelafdeling van ruim 20 collega’s is dit zo ongeveer de helft van alle medewerkers. De software(ontwikkeling) is dan ook de drijvende kracht binnen de organisatie. Ze werken aan het verbeteren dan de bestaande, maar zeker ook nieuwe producten. De software bestaat uit verschillende (React) webapplicaties, maar ook een mobile (React native) app. Hierdoor kom je met verschillende uitdagingen in aanraking en is Mobile kennis natuurlijk mooi meegenomen. De software wordt door vele duizenden professionals dagelijks gebruikt en bevatten grote hoeveelheden data. Aan het team de uitdaging om hierin de best mogelijke gebruiksvriendelijkheid neer te zetten door gebruik

Bekijk vacature »

PHP ontwikkelaar

Functie Met een complex en uitgebreid e-commerce platform, een eigen PIM-systeem en eigen scan applicatie – krijg jij dagelijks te zien hoe jouw werk gebruikt wordt door miljoenen gebruikers. En we staan qua development pas in de startblokken, aangezien er nog meerdere projecten op de plank liggen te wachten! Ons huidige development team bestaat uit 8 programmeurs. Er wordt dagelijks gereflecteerd op geschreven code, Scrum taken en kennisdelen onderling is een must. Onze voertaal binnen ons team is Engels, dit omdat wij twee internationale collega’s hebben. Ons huidige “IT Landschap” bestaat voornamelijk uit allerlei losse onderdelen die individueel, maar ook

Bekijk vacature »

Medior Java developer (fullstack)

Wat je gaat doen: Of beter nog, wat wil jij doen? Binnen DPA GEOS zijn we dan ook op zoek naar enthousiaste Java developers om ons development team te versterken. Als Java developer werk je in Agile/Scrum teams bij onze klanten en daarbij kun je eventueel ook andere ontwikkelaars begeleiden in het softwareontwikkelproces. Verder draag je positief bij aan de teamgeest binnen een projectteam en je kijkt verder dan je eigen rol. Je gaat software maken voor verschillende opdrachtgevers in jouw regio. Je bent een professional die het IT-vak serieus neemt en kwaliteit levert. Je leert snel vanwege je diepgaande

Bekijk vacature »

Laravel PHP developer in een jong team

Bedrijfsomschrijving Als je op zoek bent naar een werkplek waar plezier en uitdaging hand in hand gaan, dan is dit bedrijf de juiste keuze voor jou. Hier kun je werken aan uitdagende projecten en krijg je als developer veel verantwoordelijkheid. Het bedrijf waardeert kwaliteit boven kwantiteit en richt zich op het ontwikkelen van hoogwaardige applicaties en websites waar klanten enthousiast over zijn. Dit bedrijf is vooruitstrevend en streeft naar het leveren van de best mogelijke resultaten voor hun klanten. Als medior PHP ontwikkelaar met 3 jaar ervaring ben jij de persoon die we zoeken. Je krijgt hier de kans om

Bekijk vacature »
Daniel

Daniel

28/03/2009 17:09:00
Quote Anchor link
Ik wil graag language detection op mijn website. Ik heb hier een gratis script voor gevonden maar ik krijg het met geen mogelijk werken, ik kan geen enkele waarde uit het script met een echo laten neerschrijven. Heeft iemand een idee hoe ik dit kan gebruiken. Er zijn 2 manieren om het te gebruiken, maar ik kom uit geen van beiden..

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
<?php
/*
Script Name: Full Operating system language detection
Author: Harald Hope, Website: http://techpatterns.com/
Script Source URI: http://techpatterns.com/downloads/php_language_detection.php
Version 0.3.6
Copyright (C) 8 December 2008

This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Get the full text of the GPL here: http://www.gnu.org/licenses/gpl.txt

Coding conventions:
http://cvs.sourceforge.net/viewcvs.py/phpbb/phpBB2/docs/codingstandards.htm?rev=1.3
*/

/*
Changes:
0.3.6 - added possible $feature values to comment header section
*/

/******************************************
Script is currently set to accept 2 parameters, triggered by $feature value.
for example, get_languages( 'data' ):
1. 'header' - sets header values, for redirects etc. No data is returned
2. 'data' - for language data handling, ie for stats, etc.
    Returns an array of the following 4 item array for each language the os supports:
    1. full language abbreviation, like en-ca
    2. primary language, like en
    3. full language string, like English (Canada)
    4. primary language string, like English
*******************************************/

// choice of redirection header or just getting language data
// to call this you only need to use the $feature parameter

function get_languages( $feature, $spare='' )
{

    // get the languages
    $a_languages = languages();
    $index = '';
    $complete = '';
    $found = false;// set to default value
    //prepare user language array

    $user_languages = array();

    //check to see if language is set
    if ( isset( $_SERVER["HTTP_ACCEPT_LANGUAGE"] ) )
    {

        $languages = strtolower( $_SERVER["HTTP_ACCEPT_LANGUAGE"] );
        // $languages = ' fr-ch;q=0.3, da, en-us;q=0.8, en;q=0.5, fr;q=0.3';
        // need to remove spaces from strings to avoid error

        $languages = str_replace( ' ', '', $languages );
        $languages = explode( ",", $languages );
        //$languages = explode( ",", $test);// this is for testing purposes only

        foreach ( $languages as $language_list )
        {

            // pull out the language, place languages into array of full and primary
            // string structure:

            $temp_array = array();
            // slice out the part before ; on first step, the part before - on second, place into array
            $temp_array[0] = substr( $language_list, 0, strcspn( $language_list, ';' ) );//full language
            $temp_array[1] = substr( $language_list, 0, 2 );// cut out primary language
            //place this array into main $user_languages language array

            $user_languages[] = $temp_array;
        }


        //start going through each one
        for ( $i = 0; $i < count( $user_languages ); $i++ )
        {

            foreach ( $a_languages as $index => $complete )
            {

                if ( $index == $user_languages[$i][0] )
                {

                    // complete language, like english (canada)
                    $user_languages[$i][2] = $complete;
                    // extract working language, like english
                    $user_languages[$i][3] = substr( $complete, 0, strcspn( $complete, ' (' ) );
                }
            }
        }
    }

    else// if no languages found
    {
        $user_languages[0] = array( '','','','' ); //return blank array.
    }
    // print_r($user_languages);
    // return parameters

    if ( $feature == 'data' )
    {

        return $user_languages;
    }


    // this is just a sample, replace target language and file names with your own.
    elseif ( $feature == 'header' )
    {

        switch ( $user_languages[0][1] )// get default primary language, the first one in array that is
        {
            case
'en':
                $location = 'english.php';
                $found = true;
                break;
            case
'sp':
                $location = 'spanish.php';
                $found = true;
                break;
            default:

                break;
        }

        if ( $found )
        {

            header("Location: $location");
        }

        else// make sure you have a default page to send them to
        {
            header("Location: default.php");
        }
    }
}

function
languages()
{

// pack abbreviation/language array
// important note: you must have the default language as the last item in each major language, after all the
// en-ca type entries, so en would be last in that case

    $a_languages = array(
    'af' => 'Afrikaans',
    'sq' => 'Albanian',
    'ar-dz' => 'Arabic (Algeria)',
    'ar-bh' => 'Arabic (Bahrain)',
    'ar-eg' => 'Arabic (Egypt)',
    'ar-iq' => 'Arabic (Iraq)',
    'ar-jo' => 'Arabic (Jordan)',
    'ar-kw' => 'Arabic (Kuwait)',
    'ar-lb' => 'Arabic (Lebanon)',
    'ar-ly' => 'Arabic (libya)',
    'ar-ma' => 'Arabic (Morocco)',
    'ar-om' => 'Arabic (Oman)',
    'ar-qa' => 'Arabic (Qatar)',
    'ar-sa' => 'Arabic (Saudi Arabia)',
    'ar-sy' => 'Arabic (Syria)',
    'ar-tn' => 'Arabic (Tunisia)',
    'ar-ae' => 'Arabic (U.A.E.)',
    'ar-ye' => 'Arabic (Yemen)',
    'ar' => 'Arabic',
    'hy' => 'Armenian',
    'as' => 'Assamese',
    'az' => 'Azeri',
    'eu' => 'Basque',
    'be' => 'Belarusian',
    'bn' => 'Bengali',
    'bg' => 'Bulgarian',
    'ca' => 'Catalan',
    'zh-cn' => 'Chinese (China)',
    'zh-hk' => 'Chinese (Hong Kong SAR)',
    'zh-mo' => 'Chinese (Macau SAR)',
    'zh-sg' => 'Chinese (Singapore)',
    'zh-tw' => 'Chinese (Taiwan)',
    'zh' => 'Chinese',
    'hr' => 'Croatian',
    'cs' => 'Czech',
    'da' => 'Danish',
    'div' => 'Divehi',
    'nl-be' => 'Dutch (Belgium)',
    'nl' => 'Dutch (Netherlands)',
    'en-au' => 'English (Australia)',
    'en-bz' => 'English (Belize)',
    'en-ca' => 'English (Canada)',
    'en-ie' => 'English (Ireland)',
    'en-jm' => 'English (Jamaica)',
    'en-nz' => 'English (New Zealand)',
    'en-ph' => 'English (Philippines)',
    'en-za' => 'English (South Africa)',
    'en-tt' => 'English (Trinidad)',
    'en-gb' => 'English (United Kingdom)',
    'en-us' => 'English (United States)',
    'en-zw' => 'English (Zimbabwe)',
    'en' => 'English',
    'us' => 'English (United States)',
    'et' => 'Estonian',
    'fo' => 'Faeroese',
    'fa' => 'Farsi',
    'fi' => 'Finnish',
    'fr-be' => 'French (Belgium)',
    'fr-ca' => 'French (Canada)',
    'fr-lu' => 'French (Luxembourg)',
    'fr-mc' => 'French (Monaco)',
    'fr-ch' => 'French (Switzerland)',
    'fr' => 'French (France)',
    'mk' => 'FYRO Macedonian',
    'gd' => 'Gaelic',
    'ka' => 'Georgian',
    'de-at' => 'German (Austria)',
    'de-li' => 'German (Liechtenstein)',
    'de-lu' => 'German (Luxembourg)',
    'de-ch' => 'German (Switzerland)',
    'de' => 'German (Germany)',
    'el' => 'Greek',
    'gu' => 'Gujarati',
    'he' => 'Hebrew',
    'hi' => 'Hindi',
    'hu' => 'Hungarian',
    'is' => 'Icelandic',
    'id' => 'Indonesian',
    'it-ch' => 'Italian (Switzerland)',
    'it' => 'Italian (Italy)',
    'ja' => 'Japanese',
    'kn' => 'Kannada',
    'kk' => 'Kazakh',
    'kok' => 'Konkani',
    'ko' => 'Korean',
    'kz' => 'Kyrgyz',
    'lv' => 'Latvian',
    'lt' => 'Lithuanian',
    'ms' => 'Malay',
    'ml' => 'Malayalam',
    'mt' => 'Maltese',
    'mr' => 'Marathi',
    'mn' => 'Mongolian (Cyrillic)',
    'ne' => 'Nepali (India)',
    'nb-no' => 'Norwegian (Bokmal)',
    'nn-no' => 'Norwegian (Nynorsk)',
    'no' => 'Norwegian (Bokmal)',
    'or' => 'Oriya',
    'pl' => 'Polish',
    'pt-br' => 'Portuguese (Brazil)',
    'pt' => 'Portuguese (Portugal)',
    'pa' => 'Punjabi',
    'rm' => 'Rhaeto-Romanic',
    'ro-md' => 'Romanian (Moldova)',
    'ro' => 'Romanian',
    'ru-md' => 'Russian (Moldova)',
    'ru' => 'Russian',
    'sa' => 'Sanskrit',
    'sr' => 'Serbian',
    'sk' => 'Slovak',
    'ls' => 'Slovenian',
    'sb' => 'Sorbian',
    'es-ar' => 'Spanish (Argentina)',
    'es-bo' => 'Spanish (Bolivia)',
    'es-cl' => 'Spanish (Chile)',
    'es-co' => 'Spanish (Colombia)',
    'es-cr' => 'Spanish (Costa Rica)',
    'es-do' => 'Spanish (Dominican Republic)',
    'es-ec' => 'Spanish (Ecuador)',
    'es-sv' => 'Spanish (El Salvador)',
    'es-gt' => 'Spanish (Guatemala)',
    'es-hn' => 'Spanish (Honduras)',
    'es-mx' => 'Spanish (Mexico)',
    'es-ni' => 'Spanish (Nicaragua)',
    'es-pa' => 'Spanish (Panama)',
    'es-py' => 'Spanish (Paraguay)',
    'es-pe' => 'Spanish (Peru)',
    'es-pr' => 'Spanish (Puerto Rico)',
    'es-us' => 'Spanish (United States)',
    'es-uy' => 'Spanish (Uruguay)',
    'es-ve' => 'Spanish (Venezuela)',
    'es' => 'Spanish (Traditional Sort)',
    'sx' => 'Sutu',
    'sw' => 'Swahili',
    'sv-fi' => 'Swedish (Finland)',
    'sv' => 'Swedish',
    'syr' => 'Syriac',
    'ta' => 'Tamil',
    'tt' => 'Tatar',
    'te' => 'Telugu',
    'th' => 'Thai',
    'ts' => 'Tsonga',
    'tn' => 'Tswana',
    'tr' => 'Turkish',
    'uk' => 'Ukrainian',
    'ur' => 'Urdu',
    'uz' => 'Uzbek',
    'vi' => 'Vietnamese',
    'xh' => 'Xhosa',
    'yi' => 'Yiddish',
    'zu' => 'Zulu' );

    return $a_languages;
}

?>


hulp zou zeer gewaardeerd worden...
 
PHP hulp

PHP hulp

18/11/2024 10:24:58
 
Willem Jan Z

Willem Jan Z

28/03/2009 17:15:00
Quote Anchor link
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
<?php
    echo '<pre>'.print_r(get_languages('data'),1).'</pre>';
?>
 
Daniel

Daniel

28/03/2009 18:03:00
Quote Anchor link
Ik heb dit op regel 126 geplakt en de output in Internet Explorer is het volgende:

Array
(
[0] => Array
(
[0] => nl
[1] => nl
[2] => Dutch (Netherlands)
[3] => Dutch
)

)

In Firefox:
Array
(
[0] => Array
(
[0] => nl
[1] => nl
[2] => Dutch (Netherlands)
[3] => Dutch
)

[1] => Array
(
[0] => en-us
[1] => en
[2] => English (United States)
[3] => English
)

[2] => Array
(
[0] => en
[1] => en
[2] => English
[3] => English
)

)

Alleen nu he volgende, hoe kan ik de header functie van het script gebruiken om mij te laten doorverwijzen naar ingesteld pagina's
 
Flip --

Flip --

28/03/2009 18:27:00
Quote Anchor link
bij dit stukje zelf meer bijzetten:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
            case 'en':
                $location = 'english.php';
                $found = true;
                break;


en deze functie:
get_languages( $feature, $spare='' )

aanroepen met #feature = 'header'
 
Daniel

Daniel

28/03/2009 18:38:00
Quote Anchor link
hoe doe ik dat aanroepen? gewoon index.php#feature=header of ben ik ergens totaal mee in de war?
Ik snap gewoon helemaal niks van Arrays
 
Flip --

Flip --

28/03/2009 19:22:00
Quote Anchor link
#feature moest $feature zijn dat was een typo.

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
include('het pad en de naam naar het script wat je hierboven hebt gepost');
get_languages('header');
?>


dat is alles!
in plaats van de regel waar de include staat kan je ook gewoon het hele script plakken.

je wilt toch doorverwezen worden naar andere pagina's ?
"Ik heb hier een gratis script voor gevonden maar ik krijg het met geen mogelijk werken, ik kan geen enkele waarde uit het script met een echo laten neerschrijven."
dan hoef je dus ook niks te echo-en

zelf pagina's toevoegen of wijzigen gaat zo:
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
            case 'nl':
                $location = 'nederlands.html';
                $found = true;
                break;

dat ze je dus wel ff op de goede plaats bij regel 105 ofzo.

regel 122 bepaald de plaats van de standaard pagina als je geen aparte pagina voor de taal hebt
 
Daniel

Daniel

28/03/2009 22:41:00
Quote Anchor link
Flip, heel erg bedankt voor de reactie. Ik denk dat ik er bijna ben alleen krijg ik nog een error:

Warning: Cannot modify header information - headers already sent by (output started at /home/httpd/vhosts/dannyvanderzande.nl/httpdocs/site/test/test.php:288) in /home/httpd/vhosts/dannyvanderzande.nl/httpdocs/site/test/test.php on line 120

line 120 is de header naar de $location variabele

en

line 288 is de eindtag van het PHP script

enig idee wat ik foutdoe.
Zal beide code's even posten

index:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
<?php
include('test.php');
get_languages('header');
?>


test.php:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
<?php
/*
Script Name: Full Operating system language detection
Author: Harald Hope, Website: http://techpatterns.com/
Script Source URI: http://techpatterns.com/downloads/php_language_detection.php
Version 0.3.6
Copyright (C) 8 December 2008

This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation; either version 3 of the License, or (at your option) any later version.

This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.

Get the full text of the GPL here: http://www.gnu.org/licenses/gpl.txt

Coding conventions:
http://cvs.sourceforge.net/viewcvs.py/phpbb/phpBB2/docs/codingstandards.htm?rev=1.3
*/

/*
Changes:
0.3.6 - added possible $feature values to comment header section
*/

/******************************************
Script is currently set to accept 2 parameters, triggered by $feature value.
for example, get_languages( 'data' ):
1. 'header' - sets header values, for redirects etc. No data is returned
2. 'data' - for language data handling, ie for stats, etc.
    Returns an array of the following 4 item array for each language the os supports:
    1. full language abbreviation, like en-ca
    2. primary language, like en
    3. full language string, like English (Canada)
    4. primary language string, like English
*******************************************/

// choice of redirection header or just getting language data
// to call this you only need to use the $feature parameter

function get_languages( $feature, $spare='' )
{

    // get the languages
    $a_languages = languages();
    $index = '';
    $complete = '';
    $found = false;// set to default value
    //prepare user language array

    $user_languages = array();

    //check to see if language is set
    if ( isset( $_SERVER["HTTP_ACCEPT_LANGUAGE"] ) )
    {

        $languages = strtolower( $_SERVER["HTTP_ACCEPT_LANGUAGE"] );
        // $languages = ' fr-ch;q=0.3, da, en-us;q=0.8, en;q=0.5, fr;q=0.3';
        // need to remove spaces from strings to avoid error

        $languages = str_replace( ' ', '', $languages );
        $languages = explode( ",", $languages );
        //$languages = explode( ",", $test);// this is for testing purposes only

        foreach ( $languages as $language_list )
        {

            // pull out the language, place languages into array of full and primary
            // string structure:

            $temp_array = array();
            // slice out the part before ; on first step, the part before - on second, place into array
            $temp_array[0] = substr( $language_list, 0, strcspn( $language_list, ';' ) );//full language
            $temp_array[1] = substr( $language_list, 0, 2 );// cut out primary language
            //place this array into main $user_languages language array

            $user_languages[] = $temp_array;
        }


        //start going through each one
        for ( $i = 0; $i < count( $user_languages ); $i++ )
        {

            foreach ( $a_languages as $index => $complete )
            {

                if ( $index == $user_languages[$i][0] )
                {

                    // complete language, like english (canada)
                    $user_languages[$i][2] = $complete;
                    // extract working language, like english
                    $user_languages[$i][3] = substr( $complete, 0, strcspn( $complete, ' (' ) );
                }
            }
        }
    }

    else// if no languages found
    {
        $user_languages[0] = array( '','','','' ); //return blank array.
    }
    // print_r($user_languages);
    // return parameters

    if ( $feature == 'data' )
    {

        return $user_languages;
    }


    // this is just a sample, replace target language and file names with your own.
    elseif ( $feature == 'header' )
    {

        switch ( $user_languages[0][1] )// get default primary language, the first one in array that is
        {
            case
'en':
                $location = 'english.php';
                $found = true;
                break;
            case
'nl':
                $location = 'nederlands.html';
                $found = true;
                break;
            default:

               $location = 'english.php';
                $found = true;
                break;
        }

        if ( $found )
        {

            header ("Location: $location");
        }

        else// make sure you have a default page to send them to
        {
            header("Location: english.php");
        }
    }
}
function
languages()
{

// pack abbreviation/language array
// important note: you must have the default language as the last item in each major language, after all the
// en-ca type entries, so en would be last in that case

    $a_languages = array(
    'af' => 'Afrikaans',
    'sq' => 'Albanian',
    'ar-dz' => 'Arabic (Algeria)',
    'ar-bh' => 'Arabic (Bahrain)',
    'ar-eg' => 'Arabic (Egypt)',
    'ar-iq' => 'Arabic (Iraq)',
    'ar-jo' => 'Arabic (Jordan)',
    'ar-kw' => 'Arabic (Kuwait)',
    'ar-lb' => 'Arabic (Lebanon)',
    'ar-ly' => 'Arabic (libya)',
    'ar-ma' => 'Arabic (Morocco)',
    'ar-om' => 'Arabic (Oman)',
    'ar-qa' => 'Arabic (Qatar)',
    'ar-sa' => 'Arabic (Saudi Arabia)',
    'ar-sy' => 'Arabic (Syria)',
    'ar-tn' => 'Arabic (Tunisia)',
    'ar-ae' => 'Arabic (U.A.E.)',
    'ar-ye' => 'Arabic (Yemen)',
    'ar' => 'Arabic',
    'hy' => 'Armenian',
    'as' => 'Assamese',
    'az' => 'Azeri',
    'eu' => 'Basque',
    'be' => 'Belarusian',
    'bn' => 'Bengali',
    'bg' => 'Bulgarian',
    'ca' => 'Catalan',
    'zh-cn' => 'Chinese (China)',
    'zh-hk' => 'Chinese (Hong Kong SAR)',
    'zh-mo' => 'Chinese (Macau SAR)',
    'zh-sg' => 'Chinese (Singapore)',
    'zh-tw' => 'Chinese (Taiwan)',
    'zh' => 'Chinese',
    'hr' => 'Croatian',
    'cs' => 'Czech',
    'da' => 'Danish',
    'div' => 'Divehi',
    'nl-be' => 'Dutch (Belgium)',
    'nl' => 'Dutch (Netherlands)',
    'en-au' => 'English (Australia)',
    'en-bz' => 'English (Belize)',
    'en-ca' => 'English (Canada)',
    'en-ie' => 'English (Ireland)',
    'en-jm' => 'English (Jamaica)',
    'en-nz' => 'English (New Zealand)',
    'en-ph' => 'English (Philippines)',
    'en-za' => 'English (South Africa)',
    'en-tt' => 'English (Trinidad)',
    'en-gb' => 'English (United Kingdom)',
    'en-us' => 'English (United States)',
    'en-zw' => 'English (Zimbabwe)',
    'en' => 'English',
    'us' => 'English (United States)',
    'et' => 'Estonian',
    'fo' => 'Faeroese',
    'fa' => 'Farsi',
    'fi' => 'Finnish',
    'fr-be' => 'French (Belgium)',
    'fr-ca' => 'French (Canada)',
    'fr-lu' => 'French (Luxembourg)',
    'fr-mc' => 'French (Monaco)',
    'fr-ch' => 'French (Switzerland)',
    'fr' => 'French (France)',
    'mk' => 'FYRO Macedonian',
    'gd' => 'Gaelic',
    'ka' => 'Georgian',
    'de-at' => 'German (Austria)',
    'de-li' => 'German (Liechtenstein)',
    'de-lu' => 'German (Luxembourg)',
    'de-ch' => 'German (Switzerland)',
    'de' => 'German (Germany)',
    'el' => 'Greek',
    'gu' => 'Gujarati',
    'he' => 'Hebrew',
    'hi' => 'Hindi',
    'hu' => 'Hungarian',
    'is' => 'Icelandic',
    'id' => 'Indonesian',
    'it-ch' => 'Italian (Switzerland)',
    'it' => 'Italian (Italy)',
    'ja' => 'Japanese',
    'kn' => 'Kannada',
    'kk' => 'Kazakh',
    'kok' => 'Konkani',
    'ko' => 'Korean',
    'kz' => 'Kyrgyz',
    'lv' => 'Latvian',
    'lt' => 'Lithuanian',
    'ms' => 'Malay',
    'ml' => 'Malayalam',
    'mt' => 'Maltese',
    'mr' => 'Marathi',
    'mn' => 'Mongolian (Cyrillic)',
    'ne' => 'Nepali (India)',
    'nb-no' => 'Norwegian (Bokmal)',
    'nn-no' => 'Norwegian (Nynorsk)',
    'no' => 'Norwegian (Bokmal)',
    'or' => 'Oriya',
    'pl' => 'Polish',
    'pt-br' => 'Portuguese (Brazil)',
    'pt' => 'Portuguese (Portugal)',
    'pa' => 'Punjabi',
    'rm' => 'Rhaeto-Romanic',
    'ro-md' => 'Romanian (Moldova)',
    'ro' => 'Romanian',
    'ru-md' => 'Russian (Moldova)',
    'ru' => 'Russian',
    'sa' => 'Sanskrit',
    'sr' => 'Serbian',
    'sk' => 'Slovak',
    'ls' => 'Slovenian',
    'sb' => 'Sorbian',
    'es-ar' => 'Spanish (Argentina)',
    'es-bo' => 'Spanish (Bolivia)',
    'es-cl' => 'Spanish (Chile)',
    'es-co' => 'Spanish (Colombia)',
    'es-cr' => 'Spanish (Costa Rica)',
    'es-do' => 'Spanish (Dominican Republic)',
    'es-ec' => 'Spanish (Ecuador)',
    'es-sv' => 'Spanish (El Salvador)',
    'es-gt' => 'Spanish (Guatemala)',
    'es-hn' => 'Spanish (Honduras)',
    'es-mx' => 'Spanish (Mexico)',
    'es-ni' => 'Spanish (Nicaragua)',
    'es-pa' => 'Spanish (Panama)',
    'es-py' => 'Spanish (Paraguay)',
    'es-pe' => 'Spanish (Peru)',
    'es-pr' => 'Spanish (Puerto Rico)',
    'es-us' => 'Spanish (United States)',
    'es-uy' => 'Spanish (Uruguay)',
    'es-ve' => 'Spanish (Venezuela)',
    'es' => 'Spanish (Traditional Sort)',
    'sx' => 'Sutu',
    'sw' => 'Swahili',
    'sv-fi' => 'Swedish (Finland)',
    'sv' => 'Swedish',
    'syr' => 'Syriac',
    'ta' => 'Tamil',
    'tt' => 'Tatar',
    'te' => 'Telugu',
    'th' => 'Thai',
    'ts' => 'Tsonga',
    'tn' => 'Tswana',
    'tr' => 'Turkish',
    'uk' => 'Ukrainian',
    'ur' => 'Urdu',
    'uz' => 'Uzbek',
    'vi' => 'Vietnamese',
    'xh' => 'Xhosa',
    'yi' => 'Yiddish',
    'zu' => 'Zulu' );

    return $a_languages;
}

?>
 
- SanThe -

- SanThe -

28/03/2009 22:57:00
 
Daniel

Daniel

29/03/2009 13:16:00
Quote Anchor link
Ja ik weet dat dit komt door dubbele header output maar ik gebruik al sinds jaar en dag dreamweaver voor al mijn scripting en die heeft nog nooit dit probleem gegeven tenzij ik ook echt 2 maal een header heb geoutput of iets van HTML heb laten schrijven voor de header. Helaas zie ik dit keer echt niet wat er mis is gegaan en daarom dus de vraag of iemand anders het wel ziet..
 
- SanThe -

- SanThe -

29/03/2009 13:28:00
Quote Anchor link
Ik krijg het idee dat er na de ?> een spatie of een lege regel staat.
 
Daniel

Daniel

29/03/2009 13:33:00
Quote Anchor link
* schud SanThe de hand*
Er stond een spatie, ik had al aan het idee van een enter zitten denken maar een spatie niet.. best som misschien maar zo te zien werkt het nu wel, hartstikke bedankt, top!
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.