Avatar billede jokerper Nybegynder
17. februar 2012 - 23:55 Der er 10 kommentarer

php - ajax - urlencode/decode

Hejsa

Jeg har lige et problem med ajax.

Jeg kan ikke lige finde ud af hvordan jeg undgår at den bruger url "coding".

<input type="text" id="youtube" name="page=video.php?youtube=">

Dette bliver urlencode: page=video.php?youtube=

Er der nogen som ved hvor jeg skal lede i scriptet, for at undgå dette.

For når jeg manuelt ændrer det tilbage i adresselinien så er der ingen problem, har forsøgt med decode, uden held.
Avatar billede Broxigar Praktikant
18. februar 2012 - 00:18 #1
Øhm.. Kan godt være at det bare er mig der er dum, men der er da ingen forskel mellem de to strings?
Avatar billede DeeDawg Nybegynder
18. februar 2012 - 00:27 #2
@Broxigar: Tror det skal forstås på den måde, at det er page=video.php?youtube=, der bliver encoded, og ikke at det er resultatet. ;)
Avatar billede Broxigar Praktikant
18. februar 2012 - 00:37 #3
Ok, så det han mener er, at

page=video.php?youtube=

bliver

page%3Dvideo.php%3Fyoutube%3D

@jokerper
Det er rimelig svært at sige hvor du skal lede i scriptet, når vi ikke har fået nogen som helst kode.
Hvis du poster den kode der har noget med dette problem at gøre, så kan vi bedre kigge på det.
Det er rimelig
Avatar billede jokerper Nybegynder
18. februar 2012 - 00:37 #4
index.php?page=video.php&youtube=rasmus+seebach

index.php?%3Fpage%3Dvideo.php%26youtube%3D=rasmus+seebach
Avatar billede jokerper Nybegynder
18. februar 2012 - 00:39 #5
function ajaxFunction(){
    var ajaxRequest;  // The variable that makes Ajax possible!
   
    try{
        // Opera 8.0+, Firefox, Safari
    ajaxRequest = new XMLHttpRequest();
    } catch (e){
        // Internet Explorer Browsers
        try{
        ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try{
            ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e){
                // Something went wrong
                alert("Your browser broke!");
                return false;
            }
        }
    }
    // Create a function that will receive data sent from the server
ajaxRequest.onreadystatechange = function(){
        if(ajaxRequest.readyState == 4){
            document.form1.youtube.value = ajaxRequest.responseText;
        }
    }
    var youtube = document.getElementById('youtube').value;

    var queryString = youtube;
ajaxRequest.open("GET", "video.php" + queryString, true);
ajaxRequest.send(null);
}

//-->
</script>


<form  name="form1" id="form1" method="get">
<input type="text" id="youtube" name="?page=video.php&youtube=">
<input type="submit" onclick='ajaxFunction()' value="Søg">
</form>
Avatar billede olebole Juniormester
18. februar 2012 - 02:03 #6
<ole>

Mange sære opfattelser af Ajax har jeg oplevet. Dette slår nok alle rekorder! Hvorfor dog den yderst alternative struktur?  =)

/mvh
</bole>
Avatar billede jokerper Nybegynder
18. februar 2012 - 02:24 #7
olebole

tak for kommentaren.


men hvad med hjælpen???
Avatar billede jokerper Nybegynder
18. februar 2012 - 02:34 #8
Den er vist fra en af dine hadesider:
http://www.tizag.com/ajaxTutorial/ajax-javascript.php

[code]
<html>
<body>

<script language="javascript" type="text/javascript">
<!--
//Browser Support Code
function ajaxFunction(){
    var ajaxRequest;  // The variable that makes Ajax possible!
   
    try{
        // Opera 8.0+, Firefox, Safari
        ajaxRequest = new XMLHttpRequest();
    } catch (e){
        // Internet Explorer Browsers
        try{
            ajaxRequest = new ActiveXObject("Msxml2.XMLHTTP");
        } catch (e) {
            try{
                ajaxRequest = new ActiveXObject("Microsoft.XMLHTTP");
            } catch (e){
                // Something went wrong
                alert("Your browser broke!");
                return false;
            }
        }
    }
    // Create a function that will receive data sent from the server
    ajaxRequest.onreadystatechange = function(){
        if(ajaxRequest.readyState == 4){
            var ajaxDisplay = document.getElementById('ajaxDiv');
            ajaxDisplay.innerHTML = ajaxRequest.responseText;
        }
    }
    var age = document.getElementById('age').value;
    var wpm = document.getElementById('wpm').value;
    var sex = document.getElementById('sex').value;
    var queryString = "?age=" + age + "&wpm=" + wpm + "&sex=" + sex;
    ajaxRequest.open("GET", "ajax-example.php" + queryString, true);
    ajaxRequest.send(null);
}

//-->
</script>



<form name='myForm'>
Max Age: <input type='text' id='age' /> <br />
Max WPM: <input type='text' id='wpm' />
<br />
Sex: <select id='sex'>
<option value='m'>m</option>
<option value='f'>f</option>
</select>
<input type='button' onclick='ajaxFunction()' value='Query MySQL' />
</form>
<div id='ajaxDiv'>Your result will display here</div>
</body>
</html>['/code']


Kom så med hjælpen, for jeg ved hvis der er en som kan hjælpe mig, så er det dig!
Avatar billede olebole Juniormester
18. februar 2012 - 02:36 #9
Selvtak. Hjælp til hvad? Jeg har absolut ingen anelse om, hvad du har tænkt dig med koden. Hvorfor har du givet dit youtube input den name attribut?

Prøv at forklare meningen med koden - og læg meget gerne et link til siden, så vi f.eks. kan se, hvilket tegnsæt du bruger
Avatar billede olebole Juniormester
18. februar 2012 - 14:56 #10
Det link, du har lagt, er til et fuldstændig ubrugeligt eksempel. Det er ikke skrevet i HTML, men i en ynkelig gang tag soup! Eksempelvis er der ingen angivelse af tegnsæt - og så er det komplet umuligt at anvende Ajax. At koden så ikke har meget med Ajax at gøre, er så en helt anden ting.

Når det er sagt, så ved jeg stadig ikke, hvad du gerne vil - og jeg forstår ikke dine ændringer af den oprindelige kode.
Avatar billede Ny bruger Nybegynder

Din løsning...

Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.

Loading billede Opret Preview
Kategori
Vi tilbyder markedets bedste kurser inden for webudvikling

Log ind eller opret profil

Hov!

For at kunne deltage på Computerworld Eksperten skal du være logget ind.

Det er heldigvis nemt at oprette en bruger: Det tager to minutter og du kan vælge at bruge enten e-mail, Facebook eller Google som login.

Du kan også logge ind via nedenstående tjenester