hallo
ich bin recht neu in der Materie und hab folgende Frage.
Ich sende ein Formular mit vorname und nachname an ein CGI Handler , das wird auch richtig empfangen .
ich wollte in meinem Formular dan den wert für Vorname und Nachname angezeigt haben nur leider funktioniert das nicht so richtig.
vielleicht könnte mir Hand weiterhelfen was hier verkehrt ist.
mfg
ich bin recht neu in der Materie und hab folgende Frage.
Ich sende ein Formular mit vorname und nachname an ein CGI Handler , das wird auch richtig empfangen .
ich wollte in meinem Formular dan den wert für Vorname und Nachname angezeigt haben nur leider funktioniert das nicht so richtig.
vielleicht könnte mir Hand weiterhelfen was hier verkehrt ist.
mfg
HTML:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta name="viewport" content="2000, user-scalable=no">
<link rel="stylesheet" type="text/css" href="Z_style.css">
<title>SWITCH</title>
<script type="text/javascript">
var xmlhttp;
var text;
function getFormFields(form){
var e = form.querySelectorAll("input,select");
var res = {};
for( var i=0, n=e.length; i<n; i++ ){
if( !e[i].name )
continue;
res[e[i].name] = e[i].value;
}
return res;
}
function loadXMLDoc(url,cfunc)
{
if (window.XMLHttpRequest)
{
xmlhttp=new XMLHttpRequest();
}
else
{
xmlhttp=new ActiveXObject("Microsoft.XMLHTTP");
}
xmlhttp.onreadystatechange=cfunc;
xmlhttp.open("GET",url,true);
xmlhttp.send();
}
function toQueryString( p )
{
var ret = "";
for( var k in p )
ret += ( ret=='' ? '?' : '&' ) + encodeURIComponent(k) + '=' + encodeURIComponent(p[k]);
return ret;
}
function Test_formular1( event, form )
{
var params = getFormFields(form);
params.t = Math.random();
loadXMLDoc(form.action + toQueryString(params),
function()
{
if( xmlhttp.readyState==4 && xmlhttp.status==200 )
{
document.getElementById("vorname").value = xmlhttp.responseText;
}
}
);
event && event.preventDefault();
}
function Test_formular2( event, form )
{
var params = getFormFields(form);
params.t = Math.random();
loadXMLDoc(form.action + toQueryString(params),
function()
{
if( xmlhttp.readyState==4 && xmlhttp.status==200 )
{
document.getElementById("nachname").value = xmlhttp.responseText;
}
}
);
event && event.preventDefault();
}
function test(event,form)
{
Test_formular1(event,form);
Test_formular2(event,form);
}
</script>
</head>
<body >
</body >
<form method="get" onsubmit="test(event,this); return false;" action="/switch.cgi">
<label class="h2" form="person">Namenseingabe</label>
<label for="vorname">Vorname</label>
<input type="text" name="vorname" id="vorname" maxlength="30">
<label class="h2" form="person">Namenseingabe</label>
<label for="nachname">Nachname</label>
<input type="text" name="nachname" id="nachname" maxlength="30">
<input type="submit" value="Senden" />
</form>
</html>
Code:
:######################
static char *SWITCH_CGIHandler( int iIndex, int iNumParams, char *pcParam[], char *pcValue[] )
{
uint32_t i=0;
int index, index2;
index = FindCGIParameter ( "vorname", pcParam, iNumParams );
DrawString(0,50,pcParam[0],&Arial_16x25,WHITE,RED);
DrawString(0,79,pcValue[0],&Arial_16x25,WHITE,RED);
if(index != -1)
{
for (i=0; i<2; i++)
{
DrawString(0,150,pcValue[0],&Arial_16x25,WHITE,RED);
if (strcmp(pcParam[i] , "vorname")==0)
{
strcat((char *)(data_response_buf,"ja1");
}
if (strcmp(pcParam[1] , "nachname")==0)
{
strcat((char *)(data_response_buf),"ja2");
}
}
clear_response_bufer(data_response_buf);
}
/* uri to send after cgi call*/
return RESPONSE_PAGE_SET_CGI_RSP_URL;
}
Zuletzt bearbeitet von einem Moderator: