Ik heb een coming soon pagina in twee talen (zie topic: https://www.phphulp.nl/php/forum/topic/opgelost-phparrays-multilanguage-htmlwebpagina/103463/). Het enige dat nog vertaald moet worden is de tekst in de 'Notify me' javascript file (van nieuwsbrief formulier Mail Chimp).

Is het mogelijk om onderstaande in te voeren met de methode hieronder.
Zo nee, weet iemand een andere correcte en veilige oplossing?

<?php
$lang = array(
"title" => "tekst",
"description" => "tekst",
"lang_en" => "English",
"lang_nl" => "Nederlands"
);
$lang['subscribe_and_updated'] = "Subscribe and stay updated!";
$lang['signing_up'] = "Signing up to our newsletter gives you exclusive access to our opening!";
$lang['join_waiting_list'] = "Join Waiting List";
$lang['get_notified'] = "Get Notified";
?>

<?php echo $lang['subscribe_and_updated']; ?>
<?php echo $lang['signing_up']; ?>
<?php echo $lang['get_notified']; ?>
Ik heb het niet over dat scripts-blok, maar het bestand waar je alle vertalingen in regelt!
Dat ding uit je eerste post!


Staan die vertalingen daar in? Ja of nee?
Een kwestie van kijken!
Dat begreep ik dus niet. Maar deze neem ik aan [Engels):


<?php
	$lang['title'] = "tekst";
	$lang['description'] = "tekst";
	$lang['lang_en'] = "English";
	$lang['lang_nl'] = "Nederlands";		
	$lang['subscribe_and_updated'] = "Subscribe and stay updated!";
	$lang['signing_up'] = "Signing up to our newsletter gives you exclusive access to our opening!";
	$lang['join_waiting_list'] = "Join Waiting List";
	$lang['get_notified'] = "Get Notified";
?>


En deze (Nederlands):


<?php
	$lang['title'] = "tekst";
	$lang['description'] = "tekst";
	$lang['lang_en'] = "English";
	$lang['lang_nl'] = "Nederlands";		
	$lang['subscribe_and_updated'] = "Abonneer en blijf op de hoogte!";
	$lang['signing_up'] = "Met jouw aanmelding krijg je als eerste toegang tot onze grote opening!";
	$lang['join_waiting_list'] = "Aanmelden voor wachtijst";
	$lang['get_notified'] = "Hou me op de hoogte";
?>


Ga nu toevoegen


Maar bestaan $lang['subscription_complete'] n $lang['mailadress_incorrect'] 
Als alles goed, is dan moet je die vertalingen nu in je HTML-source in je browser zien...
Zo niet, dan worden je php-taalbestanden niet ingeladen.
Niet gelukt. Engelse tekst staat na aanmelding nieuwsbrief of verkeerde invoer ook bij Nederlandse versie tekst.

HTML:


<script>
var lang = [];
lang['subscription_complete'] = "<?php echo $lang['subscription_complete'];?>";
lang['mailadress_incorrect'] = "<?php echo $lang['mailadress_incorrect'];?>";
</script>		
</head>


php taal Engels:

<?php
	$lang['title'] = "tekst";
	$lang['description'] = "tekst";
	$lang['lang_en'] = "English";
	$lang['lang_nl'] = "Nederlands";		
	$lang['subscribe_and_updated'] = "Subscribe and stay updated!";
	$lang['signing_up'] = "Signing up to our newsletter gives you exclusive access to our opening!";
	$lang['join_waiting_list'] = "Join Waiting List";
	$lang['get_notified'] = "Get Notified";
	$lang['subscription_complete'] = "Thank you for subscribing";
	$lang['mailadress_incorrect'] = "Invalid emailaddress. Try again.";	
?>


php taal Nederlands:

<?php
	$lang['title'] = "tekst";
	$lang['description'] = "tekst";
	$lang['lang_en'] = "English";
	$lang['lang_nl'] = "Nederlands";		
	$lang['subscribe_and_updated'] = "Abonneer en blijf op de hoogte!";
	$lang['signing_up'] = "Met jouw aanmelding krijg je als eerste toegang tot onze grote opening!";
	$lang['join_waiting_list'] = "Aanmelden voor wachtijst";
	$lang['get_notified'] = "Hou me op de hoogte";	
	$lang['subscription_complete'] = "Bedankt voor je aanmelding. <br>Je staat nu op onze wachtlijst. <br>Binnen 24 uur ontvang je onze eerste e-mail.";
	$lang['mailadress_incorrect'] = "Dit e-mailadres is onjuist.<br>Probeer het nog en keer.";	
?>


Javascript file


/*
 notifyMe jQuery Plugin v1.0.0
 Copyright (c)2014 Sergey Serafimovich
 Licensed under The MIT License.
*/
(function(e) {
    e.fn.notifyMe = function(t) {
        var r = e(this);
        var i = e(this).find("input[name=email]");
        var s = e(this).attr("action");
        var o = e(this).find(".note");
        e(this).on("submit", function(t) {
            t.preventDefault();
            var h = i.val();
            var p = /^(([^<>()[\]\\.,;:\s@\"]+(\.[^<>()[\]\\.,;:\s@\"]+)*)|(\".+\"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
            if (p.test(h)) {
                $(".message").removeClass("error bad-email success-full");
                $(".message").hide().html('').fadeIn();
                $(".fa-spinner").addClass("fa-spin").removeClass("opacity-0");
                o.show();
                e.ajax({
                    type: "POST",
                    url: s,
                    data: {
                        email: h
                    },
                    dataType: "json",
                    error: function(e) {
                        o.hide();
                        $(".fa-spinner").addClass("opacity-0").removeClass("fa-spin");
                        $(".block-message").addClass("show-block-error").removeClass("show-block-valid");
                        if (e.status == 404) {
                            $(".message").html('<p class="notify-valid">Service is not available at the moment.<br>Please check your internet connection or try again later.</p>').fadeIn();
                        } else {
                            $(".message").html('<p class="notify-valid">Oops. Looks like something went wrong.<br>Please try again later.</p>').fadeIn();
                        }
                    }
                }).done(function(e) {
                    o.hide();
                    if (e.status == "success") {
                        $(".fa-spinner").addClass("opacity-0").removeClass("fa-spin");
                        $(".message").removeClass("bad-email").addClass("success-full");
                        $(".block-message").addClass("show-block-valid").removeClass("show-block-error");
                        $(".message").html('<p class="notify-valid">Thank you for subscribing</p>').fadeIn();						

                    } else {
                        if (e.type == "ValidationError") {
                            $(".fa-spinner").addClass("opacity-0").removeClass("fa-spin");
                            $(".message").html('<p class="notify-valid">This email address looks fake or invalid.<br>Please enter a real email address.</p>').fadeIn();
                        } else {
                            $(".fa-spinner").addClass("opacity-0").removeClass("fa-spin");
                            $(".message").html('<p class="notify-valid">Oops. Looks like something went wrong.<br>Please try again later.</p>').fadeIn();
                        }
                    }
                })
            } else {
                $(".fa-spinner").addClass("opacity-0").removeClass("fa-spin");
                $(".message").addClass("bad-email").removeClass("success-full");
                $(".block-message").addClass("show-block-error").removeClass("show-block-valid");				
                $(".message").html('<p class="notify-valid">Invalid emailaddress. Try again.</p>').fadeIn();
                o.hide();
            }

            // Reset and hide all messages on .keyup()
            $("#notifyMe input").keyup(function() {
                $(".block-message").addClass("").removeClass("show-block-valid show-block-error");
                $(".message").fadeOut();
            });
        })
    }

    

})(jQuery)
Laten we die javascript-file (waar ik overigens geen wijzigingen in zie?) maar even aan de kant zetten.
Eerst willen we de weg daarnaartoe geëgaliseerd hebben. Dus ga na of je in de browser in de HTML-code de vertalingen ziet. En dan benadruk ik even browser want daarin zie je geen PHP-codes (wat je enkel in je editor ziet).
- Ariën - op 20/04/2020 15:53:47

Ik heb het niet over dat scripts-blok, maar het bestand waar je alle vertalingen in regelt!
Dat ding uit je eerste post!


Staan die vertalingen daar in? Ja of nee?
Een kwestie van kijken!


Ik vraag je me niet te helpen. Niets hoeft. Gewoon aangeven. Dat voorkomt dit gesnauw.


[size=xsmall]Toevoeging op 20/04/2020 16:31:45:[/size]

- Ariën - op 20/04/2020 16:24:16

Laten we die javascript-file (waar ik overigens geen wijzigingen in zie?) maar even aan de kant zetten.
Eerst willen we de weg daarnaartoe geëgaliseerd hebben. Dus ga na of je in de browser in de HTML-code de vertalingen ziet. En dan benadruk ik even browser want daarin zie je geen PHP-codes (wat je enkel in je editor ziet).


staan wel veranderingen in.

Ik laat het zo.


Roos G op 20/04/2020 16:29:25

Ik vraag je me niet te helpen. Niets hoeft. Gewoon aangeven. Dat voorkomt dit gesnauw.

We willen natuurlijk zeker weten of alles klopt, voordat we opeens ongecontroleerd van de hak op tak springen in plaats van de juiste weg bewandelen. Ik stel daarom graag vragen, en verwacht daarom ook concrete antwoorden.


staan wel veranderingen in.
Ik laat het zo.

Kloppen die vertalingen?

Zo ja, dan zijn we bijna bij het eind, en dan kan je de Javascript-code aanpassen, wat nu niet zo lastig meer hoeft te zijn.

Ik hoor graag wat je nu in je HTML-code van je browser ziet, zodat ik dit kan bevestigen.

Dit gaat nergens naar toe, omdat ik het niet begrijp. Ik ben weer handig in andere dingen en blijf daar liever bij. Vind dat zonde van mijn tijd, lijkt me ook zonde van jouw tijd. Een developer inhuren lijkt me beter. Zal binnenkort een vacature plaatsten en laat dit zo.

ps: Heb in n broncode gekeken en zag alleen de button vertaald staan.
Als alleen de button vertaald is, dan missen er nog meer vertalingen. Dan is het raadzamer om dit eerst even uit te werken. Verder denk ik dat een vacature in vacatureforum ook een beter idee is, of je moet zelf de basis van PHP willen gaan leren. Opsich misschien ook geen slecht idee als je jouw site wilt kunnen onderhouden.
Voor dit kleine beetje wat nu nog gedaan moet worden, vind ik het jammer, maar het is niet anders.

Reageren