Retroceder   Foros del Web > Programación para sitios web > AJAX

Respuesta
 
Herramientas Desplegado
Antiguo 17-abr-2007, 13:59   #1 (permalink)
^engonga^ está en el buen camino
 
Avatar de ^engonga^
 
Fecha de Ingreso: noviembre-2002
Mensajes: 760
Enviar un mensaje por Yahoo  a ^engonga^
contenedor externo en ajax muy bueno pero...

Holta tengo un menu que me carga paginas externas en ajax

lo he sacado de aqui http://www.dynamicdrive.com/dynamici...axtabscontent/

lo que me passa es que en una pagina tengo un formulario que me valida los campos y cuando le doy a enviar me muestra la pagina que tiene el formulario


no se si me explica

pueden ver el error en http://www.hoveus.info/sumer/sumer_area_empreses.asp en el apartado demandes

si no rellenan el formulario y le dan a enviar ya veran que pasa


la pagina donde esta el formulario es

con_empresa5.asp

Código PHP:
<%
 
'valido el formulari
Function ValidateField(sFieldvalue, sFieldtype)
 ValidField = true
 Select Case LCase(sFieldtype)
  Case "nom_empresa"
  If Len(sFieldvalue) = 0 Then ValidField = False  
  Case "pers_contacte"
  If Len(sFieldvalue) = 0 Then ValidField = False
  Case "carrec"
  If Len(sFieldvalue) = 0 Then ValidField = False
  Case "tel_1"
  If Len(sFieldvalue) = 0 Then ValidField = False
  Case "adreca"
  If Len(sFieldvalue) = 0 Then ValidField = False
  Case "poblacio"
  If Len(sFieldvalue) = 0 Then ValidField = False
  Case "provincia"
  If Len(sFieldvalue) = 0 Then ValidField = False
  Case "codi_post"
  If Len(sFieldvalue) = 0 Then ValidField = False
  Case "mail"
   If Len(sFieldvalue) < 5 Then
    ValidField = False
   Else
    If InStr(1, sFieldvalue, "@", 1) < 2 Then
     ValidField = False
    Else
     If InStr(1, sFieldvalue, ".", 1) < 4 Then
      ValidField = False
     End If
    End If
   End If  
  Case "else"
   ValidField = False
 End Select
ValidateField = ValidField
End Function
 
'
mostro el dormulari
Sub ShowForm
%>
 
   <
form id="form1" name="form1" method="post" action="<%= Request.ServerVariables("Script_Name") %>">
 <
table width="392" border="0" align="center" cellpadding="0" cellspacing="5">
      <
tr>
        <
td width="92" height="20" class="text_titol_camp" >Nom Empresa*</td>
        <
td width="300" valign="top" class="text_titol_camp"><input name="Nom_empresa" type="text" class="camo_form"  id="Nom_empresa" value="<%= Request.Form("nom_empresa") %>" size="40" />
          <%If 
dictFields(LCase("nom_empresa")) Then %>
 
<%
Response.Write "<font color=""red""  >*"%>
<% 
end if %></td>
      </
tr>
 
      <
tr>
        <
td class="text_titol_camp" >Persona de contacte *</td>
        <
td valign="top" class="text_titol_camp"><input name="pers_cont" type="text" class="camo_form"  id="pers_cont" value="<%= Request.Form("pers_contacte") %>" size="40" />
          <%If 
dictFields(LCase("pers_cont")) Then %>
 
<%
Response.Write "<font color=""red""  >*"%>
<% 
end if %></td>
      </
tr>
      <
tr>
        <
td class="text_titol_camp">C&agrave;rrec</td>
        <
td valign="top" class="text_titol_camp"><input name="carrec" type="text" class="camo_form"  id="carrec" value="<%= Request.Form("carrec") %>" size="40" />
  <%If 
dictFields(LCase("carrec")) Then %>
 
<%
Response.Write "<font color=""red""  >*"%>
<% 
end if %></td>
      </
tr>
      <
tr>
        <
td class="text_titol_camp">Tel&egrave;fon1*</td>
        <
td valign="top" class="text_titol_camp"><input name="Tel_1" type="text" class="camo_form"  id="Tel_1" value="<%= Request.Form("tel_1") %>" size="30" />
  <%If 
dictFields(LCase("tel_1")) Then %>
 
<%
Response.Write "<font color=""red""  >*"%>
<% 
end if %></td>
      </
tr>
      <
tr>
        <
td class="text_titol_camp">Tel&egrave;fon2</td>
        <
td valign="top" class="text_titol_camp"><input name="Tel_2" type="text" class="camo_form"  id="Tel_2" value="<%= Request.Form("tel_2") %>" size="30" /></td>
      </
tr>
      <
tr>
        <
td class="text_titol_camp" >E-mail*</td>
        <
td valign="top" class="text_titol_camp"><input name="Mail" type="text" class="camo_form"  id="Mail" value="<%= Request.Form("mail") %>" size="40" />
          <%If 
dictFields(LCase("mail")) Then %>
 
<%
Response.Write "<font color=""red""  >*"%>
<% 
end if %></td>
      </
tr>
      <
tr>
        <
td class="text_titol_camp"><p>Adre&ccedil;a*</p>          </td>
        <
td valign="top" class="text_titol_camp"><input name="adreca" type="text" class="camo_form"  id="adreca" value="<%= Request.Form("adreca") %>" size="40" />
          <%If 
dictFields(LCase("adreca")) Then %>
 
<%
Response.Write "<font color=""red""  >*"%>
<% 
end if %></td>
      </
tr>
   <
tr>
        <
td class="text_titol_camp"><>Poblaci&oacute;*</p>          </td>
        <
td valign="top" class="text_titol_camp"><input name="Poblacio" type="text" class="camo_form"  id="Poblacio" value="<%= Request.Form("poblacio") %>" size="40" />
          <%If 
dictFields(LCase("poblacio")) Then %>
 
<%
Response.Write "<font color=""red""  >*"%>
<% 
end if %></td>
      </
tr>
   <
tr>
        <
td class="text_titol_camp"><>Prov&iacute;ncia*</p>          </td>
        <
td valign="top" class="text_titol_camp"><input name="Provincia" type="text" class="camo_form"  id="Provincia" value="<%= Request.Form("provincia") %>" size="40" />
          <%If 
dictFields(LCase("provincia")) Then %>
 
<%
Response.Write "<font color=""red""  >*"%>
<% 
end if %></td>
      </
tr>
   <
tr>
        <
td class="text_titol_camp"><p>Codi Postal * </p>          </td>
        <
td valign="top" class="text_titol_camp"><input name="codi_post" type="text" class="camo_form"  id="codi_post" value="<%= Request.Form("codi_post") %>" size="20" />
          <%If 
dictFields(LCase("codi_post")) Then %>
 
<%
Response.Write "<font color=""red""  >*"%>
<% 
end if %></td>
      </
tr>
   <
tr>
        <
td class="text_titol_camp">&nbsp;</td>
        <
td class="text_titol_camp">&nbsp;</td>
      </
tr>
   <
tr>
     <
td class="text_titol_camp">Comentaris </td>
     <
td class="text_titol_camp"><textarea name="comentaris" cols="30" rows="5" class="camo_form" id="comentaris"><%= Request.Form("comentaris") %></textarea></td>
      </
tr>
   <
tr>
     <
td class="text_titol_camp">&nbsp;</td>
     <
td class="text_titol_camp">&nbsp;</td>
      </
tr>
    <
tr>
        <
td class="text_titol_camp" >Li podem enviar informaci&oacute;?  </td>
        <
td class="text_titol_camp"><input name="publi" type="checkbox" class="camo_form" id="Publi" value="si" checked="checked"  />
          <
span >si estic d'acord que SUMER CONSULTORA m'envi&iumlinformaci&oacute; </span></td>
      </
tr>
      <
tr>
        <
td>&nbsp;</td>
        <
td>&nbsp;</td>
      </
tr>
      <
tr>
        <
td class="text_titol_camp">&nbsp;</td>
        <
td class="text_titol_camp"><input  name="Submit" type="submit" class="enviar" value="      Enviar       "   />
        *
camps obligatoris </td>
      </
tr>
    </
table>
         </
form>
 
      <
div align="center">
        <%
End sub
Sub Send
'composo el correu
fnom_emp = Request.Form("nom_empresa")
fpers_contacte = Request.Form("pers_contacte")
fcarr = Request.Form("carrec")
ftel1 = Request.Form("Tel_1")
ftel2 = Request.Form("Tel_2")
fmail = Request.Form("Mail")
fadreca=Request.Form("adreca")
fpoblacio=Request.Form("poblacio")
fprovincia=Request.Form("provincia")
fCP=Request.Form("codi_post")
fcoment=Request.Form("comentaris")
fpubli=Request.Form("publi")
 
sMessage = "<b>CONTACTE GENERAL EMPRESA</B><br><br><br>"_
&"<b>Nom Empresa:</b> " & fnom_emp &  "<br><br>" _
&"<b>Persona de contacte: </b>" & fpers_contacte &  "<br>" _
&"<b>Càrrec: </b>" & fcarr &  "<br>" _
&"<b>Tel 1: </b>" & ftel1 &  "<br>" _
&"<b>Tel 2: </b>" & ftel2 &  "<br>" _
&"<b>Mail: </b>" & fmail &   "<br>" _
&"<b>Adreça: </b>" & fadreca &  "<br><br>" _
&"<b>Poblacio: </b>" & fpoblacio &  "<br>" _
&"<b>Provincia: </b>" & fprovincia &   "<br>" _
&"<b>Codi Postal: </b>" & fCP & "<br>" _
&"<b>Codi Postal: </b>" & fcoment & "<br>" _
&"<b>Publi: </b>" & fpubli & "<br>"
'
per enviar el correu
Set oMail 
Server.CreateObject("CDO.Message")
'reemplazar aqui las variables principales
para = "promocio@lallacunaonline.com"
de = fmail
asunto = "Formulari CONTACTE GENERAL"
mensaje = sMessage
oMail.From = de
oMail.To = para
oMail.Subject= asunto
oMail.htmlBody ="<html><body class=""text_titol_camp"" bgcolor=#ffffff>" &mensaje& "</BODY></HTML>" 
 
 
 
'
DIM iMsgFldsiConf
'Set iMsg = CreateObject("CDO.Message")
'
Set iConf CreateObject("CDO.Configuration")
'Set Flds = iConf.Fields
'
Flds(cdoSendUsingMethod) = cdoSendUsingPort
'Flds(cdoSMTPServer) = "smtp.hoveus.info" 
'
Flds(cdoSMTPServerPort) = 465
'Flds(cdoSMTPAuthenticate) = cdoAnonymous ' 0
'Flds(cdoSMTPAuthenticate) = cdoBasic
'
Flds(cdoSendUserName) = "info@hoveus.info"
'Flds(cdoSendPassword) = "ushuai"
'
Flds.Update
'With iMsg
'
Set .Configuration iConf
'.To = "info@hoveus.info"
'
.From fmail
'.Sender = "info@hoveus.info"
'
.Subject "Formulari de contacte candidat curs interesat"
'.HTMLBody = "<html><body bgcolor=#ffffff>" &sMessage& "</BODY></HTML>" 
'
End With
 
 
 
'Mail.Host = "mail.esigual.com" ' Specify a valid SMTP server
'Mail.From = "joan@esigual.com" ' direccion que envia el correo
'Mail.FromName = "joan@esigual.com" ' Specify sender's name
 
'
Mail.AddAddress "joan@esigual.com"
'Mail.Subject = "Formulari Web"
'
Mail.Body "Funciona bien:" Chr(13) & Chr(10)  
 
'Mail.Body ="<html><body bgcolor=#ffffff>" &sMessage& "</BODY></HTML>" 
'
Mail.IsHTML true    
On Error Resume Next
oMail
.Send 
 
Mail
.Sendtoqueue
End sub
%>
             <%
Set dictFields Server.CreateObject("Scripting.Dictionary")
For 
Each Field in Request.Form
If ValidateField(Request.Form(Field), Field) = False Then
dictFields
.Add LCase(Field), true
End 
If
Next
If Request.Form.Count <> And dictFields.Count  0 Then
%>
          <
br>
           <
br>
           <
br>
           <
br>
           <
br>
           <
br>
           <
br>
           <
br>
             <
span class="text_titol_camp"><b>Gr&agrave;cies<br>
             </
b>               Aviat ens posarem amb contacte<br />
                        </
span>
             <%
Call Send
Set oMail 
Nothing
Else
ShowForm
End 
If
%> 

Última edición por ^engonga^; 17-abr-2007 a las 14:12. Razón: expandir explicacion
^engonga^ está desconectado   Responder Citando
Antiguo 17-abr-2007, 14:13   #2 (permalink)
^engonga^ está en el buen camino
 
Avatar de ^engonga^
 
Fecha de Ingreso: noviembre-2002
Mensajes: 760
Enviar un mensaje por Yahoo  a ^engonga^
Re: contenedor externo en ajax muy bueno pero...

el fichero de ajax ajaxtabs.js es el siguiente

Código PHP:
var bustcachevar=//bust potential caching of external pages after initial request? (1=yes, 0=no)
var loadstatustext="<img src='ajaxtabs/loading.gif' /> Carregant contingut..."
////NO NEED TO EDIT BELOW////////////////////////
var loadedobjects=""
var defaultcontentarray=new Object()
var 
bustcacheparameter=""
function ajaxpage(urlcontaineridtargetobj){
var 
page_request false
if (window.XMLHttpRequest// if Mozilla, Safari etc
page_request = new XMLHttpRequest()
else if (
window.ActiveXObject){ // if IE
try {
page_request = new ActiveXObject("Msxml2.XMLHTTP")

catch (
e){
try{
page_request = new ActiveXObject("Microsoft.XMLHTTP")
}
catch (
e){}
}
}
else
return 
false
var ullist=targetobj.parentNode.parentNode.getElementsByTagName("li")
for (var 
i=0i<ullist.lengthi++)
ullist[i].className=""  //deselect all tabs
targetobj.parentNode.className="selected"  //highlight currently clicked on tab
if (url.indexOf("#default")!=-1){ //if simply show default content within container (verus fetch it via ajax)
document.getElementById(containerid).innerHTML=defaultcontentarray[containerid]
return
}
document.getElementById(containerid).innerHTML=loadstatustext
page_request
.onreadystatechange=function(){
loadpage(page_requestcontainerid)
}
if (
bustcachevar//if bust caching of external page
bustcacheparameter=(url.indexOf("?")!=-1)? "&"+new Date().getTime() : "?"+new Date().getTime()
page_request.open('GET'url+bustcacheparametertrue)
page_request.send(null)
}
function 
loadpage(page_requestcontainerid){
if (
page_request.readyState == && (page_request.status==200 || window.location.href.indexOf("http")==-1))
document.getElementById(containerid).innerHTML=page_request.responseText
}
function 
loadobjs(revattribute){
if (
revattribute!=null && revattribute!=""){ //if "rev" attribute is defined (load external .js or .css files)
var objectlist=revattribute.split(/s*,s*/) //split the files and store as array
for (var i=0i<objectlist.lengthi++){
var 
file=objectlist[i]
var 
fileref=""
if (loadedobjects.indexOf(file)==-1){ //Check to see if this object has not already been added to page before proceeding
if (file.indexOf(".js")!=-1){ //If object is a js file
fileref=document.createElement('script')
fileref.setAttribute("type","text/javascript");
fileref.setAttribute("src"file);
}
else if (
file.indexOf(".css")!=-1){ //If object is a css file
fileref=document.createElement("link")
fileref.setAttribute("rel""stylesheet");
fileref.setAttribute("type""text/css");
fileref.setAttribute("href"file);
}
}
if (
fileref!=""){
document.getElementsByTagName("head").item(0).appendChild(fileref)
loadedobjects+=file+" " //Remember this object as being already added to page
}
}
}
}
function 
expandtab(tabcontentidtabnumber){ //interface for selecting a tab (plus expand corresponding content)
var thetab=document.getElementById(tabcontentid).getElementsByTagName("a")[tabnumber]
if (
thetab.getAttribute("rel")){
ajaxpage(thetab.getAttribute("href"), thetab.getAttribute("rel"), thetab)
loadobjs(thetab.getAttribute("rev"))
}
}
function 
savedefaultcontent(contentid){// save default ajax tab content
if (typeof defaultcontentarray[contentid]=="undefined"//if default content hasn't already been saved
defaultcontentarray[contentid]=document.getElementById(contentid).innerHTML
}
function 
startajaxtabs(){
for (var 
i=0i<arguments.lengthi++){ //loop through passed UL ids
var ulobj=document.getElementById(arguments[i])
var 
ulist=ulobj.getElementsByTagName("li"//array containing the LI elements within UL
for (var x=0x<ulist.lengthx++){ //loop through each LI element
var ulistlink=ulist[x].getElementsByTagName("a")[0]
if (
ulistlink.getAttribute("rel")){
var 
modifiedurl=ulistlink.getAttribute("href").replace(/^http://[^/]+//i, "http://"+window.location.hostname+"/")
ulistlink.setAttribute("href"modifiedurl//replace URL's root domain with dynamic root domain, for ajax security sake
savedefaultcontent(ulistlink.getAttribute("rel")) //save default ajax tab content
ulistlink.onclick=function(){
ajaxpage(this.getAttribute("href"), this.getAttribute("rel"), this)
loadobjs(this.getAttribute("rev"))
return 
false
}
if (
ulist[x].className=="selected"){
ajaxpage(ulistlink.getAttribute("href"), ulistlink.getAttribute("rel"), ulistlink//auto load currenly selected tab content
loadobjs(ulistlink.getAttribute("rev")) //auto load any accompanying .js and .css files
}
}
}
}


y para montar la tabla

Código PHP:
<ul id="maintab" class="shadetabs">
<
li class="selected"><a href="#default" rel="ajaxcontentarea">Presentaci&oacute;</a></li>
<
li><a href="contingut_share/con_empresa2.asp" rel="ajaxcontentarea">Selecci&oacutede personal</a></li>
<
li><a href="contingut_share/con_empresa1.asp" rel="ajaxcontentarea">Formaci&oacute;</a></li>
<
li><a href="contingut_share/con_empresa3.asp" rel="ajaxcontentarea">Outsorcing</a></li>
<
li><a href="contingut_share/con_empresa4.asp" rel="ajaxcontentarea">Assessoria</a></li>
<
li><a href="contingut_share/con_empresa5.asp" rel="ajaxcontentarea">Demandes</a></li>

</
ul>
<
div id="ajaxcontentarea" class="contentstyle">
<
p><br />
<
div align="center">
  <
img src="imatges/sumer_consultora_igualada_empresa.jpg" alt="sumer_consultora_empresa" width="500" height="241" /> </div> <br />
  <
p>Som   especialistes en <U>Captaci&oacutei Selecci&oacutede personal</U> , aquesta &eacute;s la nostra   activitat principalTamb&eacuteels hi podem oferir els serveis de <U>Formaci&oacute;,   Outsourcing de rrhh i els d&acute;Assessoria</U><U></U></p>
  <
p>Sumer   Consultora li ofereix el <U>S</U>ervei de Consultoria des del plantejament de   les seves necessitats a una continua assessoria orientada cap a l'optimitzaci&oacute;   dels seus Recursos Humans.<br />
    <br />
  Sumer t&eacute; quatre grans &agrave;rees   que es complementen entre s&iacute;: <a href="javascript: expandtab('
maintab', 2)">Selecci&oacute;</a>, <a href="javascript: expandtab('maintab', 1)">Formaci&oacute;</a>, <a href="javascript: expandtab('maintab', 3)">Outsourcing de RRHH</a> i   <a href="javascript: expandtab('maintab4)">Assessoria-Consulting</a>.<br />
  </p>
</p>
  </div>
<script type="
text/javascript">
//Start Ajax tabs script for UL with id="
maintab" Separate multiple ids each with a comma.
startajaxtabs("
maintab")
</script> 
^engonga^ está desconectado   Responder Citando
Respuesta

No hay votos aún.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 21:17.