Foros del Web » Programando para Internet » PHP »

¡¡¡solucion A Combos Dependientes!!!!

Estas en el tema de ¡¡¡solucion A Combos Dependientes!!!! en el foro de PHP en Foros del Web. /* pagina donde tengo mis combos ***PRINCIPAL*****/ <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>---Asignaciones---</title> <script language="javascript" src="jsrsClient.js"></script> <script language="javascript" src="selectphp.js"></script> <SCRIPT ...
  #1 (permalink)  
Antiguo 05/05/2004, 16:39
 
Fecha de Ingreso: marzo-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
¡¡¡solucion A Combos Dependientes!!!!

/* pagina donde tengo mis combos ***PRINCIPAL*****/

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>---Asignaciones---</title>
<script language="javascript" src="jsrsClient.js"></script>
<script language="javascript" src="selectphp.js"></script>
<SCRIPT LANGUAGE="JavaScript1.2"
SRC="func.js"
TYPE='text/javascript'></SCRIPT>



</head>

<body bgcolor="#dddddd" onload="body_onLoad();" onhelp="jsrsDebugInfo();return false;">



<div id="Layer1" style="position:absolute; left:1px; top:76px; width:146px; height:724px; z-index:1; background-color: #666666; layer-background-color: #666666; border: 1px none #000000;"></div>
<div id="Layer2" style="position:absolute; left:1px; top:0px; width:1030px; height:73px; z-index:2; background-color: #666666; layer-background-color: #666666; border: 1px none #000000;"></div>
<div id="Layer3" style="position:absolute; left:149px; top:77px; width:882px; height:723px; z-index:3; overflow: scroll; background-color: #ACACAC; layer-background-color: #ACACAC; border: 1px none #000000; text-transform: uppercase;">

<form action="asigna3.php" method="post" name="QForm">
<div align="center">
<p>&nbsp;</p>
<table width="772" border="1" cellpadding="1" cellspacing="1" bordercolor="#666666">
<tr valign="middle" bordercolor="#ACACAC" bgcolor="#999999">
<td height="41" colspan="4"><div align="center">DATOS DE DISPOSITIVOS PERIFERICOS</div></td>
<td height="41"><div align="right"><strong>Fecha :</strong></div></td>
<td height="41" bgcolor="#ACACAC"><input name="fechatxt" type="text" id="fechatxt" value="<?php print date('d/m/Y');?>" size="10" maxlength="20"></td></tr>
<tr ALIGN="LEFT" bordercolor="#ACACAC">
<?php
SelectBox ("Dependencia:", "lstMake");
SelectBox ("Departamentos:", "lstModel");
?><td></td><td></td>
</tr>
<?PHP
SelectBox ("Empleados:", "lstOptions");
?>
</tr>
</table>
</div>

</form>
</div>
</body>
</html>
<?php
function SelectBox( $Label, $selectName ){
?>
<td width="15%"><?php echo $Label ?></td>
<?php
if ($selectName=="lstOptions"){?>
<td height="41" colspan="5">
<select name="<?php echo $selectName ?>">
<option></option><option></option><option></option>
<option>--------- Not Yet Loaded ---------</option>
</select>
</td>
<?php}
else{
?>
<td align="left">
<select name="<?php echo $selectName ?>">
<option></option><option></option><option></option>
<option>--------- Not Yet Loaded ---------</option>
</select>
</td>
<?php
}
}
?>



/*AQUI VAN LOS VERDADEROS SCRIPTS QUE HACEN TODO*/

DEBES PONERLOS CADA UNO EN UN ARCHIVO PHP Y TENERLOS DENTRO DEL MISMO DIRECTORIO DE TU PAGINA DONDE LOS USAS OK???

CADA ARCHIVO ESTA ENTRE /* */

en el otro mensaje te mando los otros ok???? pq no se cuanto abarca ya este mensaje
  #2 (permalink)  
Antiguo 05/05/2004, 16:40
 
Fecha de Ingreso: marzo-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
¡¡¡solucion A Combos Dependientes!!!!(PARTE 2...)
/*jsrClient.js */
//
// jsrsClient.js - javascript remote scripting client include
//
//
// make asynchronous remote calls to server without client page refresh
//
// see license.txt for copyright and license information

/*
see history.txt for full history
2.0 26 Jul 2001 - added POST capability for IE/MOZ
*/

// callback pool needs global scope
var jsrsContextPoolSize = 0;
var jsrsContextMaxPool = 10;
var jsrsContextPool = new Array();
var jsrsBrowser = jsrsBrowserSniff();
var jsrsPOST = true;

// constructor for context object
function jsrsContextObj( contextID ){

// properties
this.id = contextID;
this.busy = true;
this.callback = null;
this.container = contextCreateContainer( contextID );

// methods
this.GET = contextGET;
this.POST = contextPOST;
this.getPayload = contextGetPayload;
this.setVisibility = contextSetVisibility;
}

// method functions are not privately scoped
// because Netscape's debugger chokes on private functions
function contextCreateContainer( containerName ){
// creates hidden container to receive server data
var container;
switch( jsrsBrowser ) {
case 'NS':
container = new Layer(100);
container.name = containerName;
container.visibility = 'hidden';
container.clip.width = 100;
container.clip.height = 100;
break;

case 'IE':
document.body.insertAdjacentHTML( "afterBegin", '<span id="SPAN' + containerName + '"></span>' );
var span = document.all( "SPAN" + containerName );
var html = '<iframe name="' + containerName + '" src=""></iframe>';
span.innerHTML = html;
span.style.display = 'none';
container = window.frames[ containerName ];
break;

case 'MOZ':
var span = document.createElement('SPAN');
span.id = "SPAN" + containerName;
document.body.appendChild( span );
var iframe = document.createElement('IFRAME');
iframe.name = containerName;
span.appendChild( iframe );
container = iframe;
break;
}
return container;
}

function contextPOST( rsPage, func, parms ){

var d = new Date();
var unique = d.getTime() + '' + Math.floor(1000 * Math.random());
var doc = (jsrsBrowser == "IE" ) ? this.container.document : this.container.contentDocument;
doc.open();
doc.write('<html><body>');
doc.write('<form name="jsrsForm" method="post" target="" ');
doc.write(' action="' + rsPage + '?U=' + unique + '">');
doc.write('<input type="hidden" name="C" value="' + this.id + '">');

// func and parms are optional
if (func != null){
doc.write('<input type="hidden" name="F" value="' + func + '">');

if (parms != null){
if (typeof(parms) == "string"){
// single parameter
doc.write( '<input type="hidden" name="P0" '
+ 'value="[' + jsrsEscapeQQ(parms) + ']">');
} else {
// assume parms is array of strings
for( var i=0; i < parms.length; i++ ){
doc.write( '<input type="hidden" name="P' + i + '" '
+ 'value="[' + jsrsEscapeQQ(parms[i]) + ']">');
}
} // parm type
} // parms
} // func

doc.write('</form></body></html>');
doc.close();
doc.forms['jsrsForm'].submit();
}

function contextGET( rsPage, func, parms ){

// build URL to call
var URL = rsPage;

// always send context
URL += "?C=" + this.id;

// func and parms are optional
if (func != null){
URL += "&F=" + escape(func);

if (parms != null){
if (typeof(parms) == "string"){
// single parameter
URL += "&P0=[" + escape(parms+'') + "]";
} else {
// assume parms is array of strings
for( var i=0; i < parms.length; i++ ){
URL += "&P" + i + "=[" + escape(parms[i]+'') + "]";
}
} // parm type
} // parms
} // func

// unique string to defeat cache
var d = new Date();
URL += "&U=" + d.getTime();

// make the call
switch( jsrsBrowser ) {
case 'NS':
this.container.src = URL;
break;
case 'IE':
this.container.document.location.replace(URL);
break;
case 'MOZ':
this.container.src = '';
this.container.src = URL;
break;
}

}

function contextGetPayload(){
switch( jsrsBrowser ) {
case 'NS':
return this.container.document.forms['jsrs_Form'].elements['jsrs_Payload'].value;
case 'IE':
return this.container.document.forms['jsrs_Form']['jsrs_Payload'].value;
case 'MOZ':
return window.frames[this.container.name].document.forms['jsrs_Form']['jsrs_Payload'].value;
}
}

function contextSetVisibility( vis ){
switch( jsrsBrowser ) {
case 'NS':
this.container.visibility = (vis)? 'show' : 'hidden';
break;
case 'IE':
document.all("SPAN" + this.id ).style.display = (vis)? '' : 'none';
break;
case 'MOZ':
document.getElementById("SPAN" + this.id).style.visibility = (vis)? '' : 'hidden';
this.container.width = (vis)? 250 : 0;
this.container.height = (vis)? 100 : 0;
break;
}
}

// end of context constructor

function jsrsGetContextID(){
var contextObj;
for (var i = 1; i <= jsrsContextPoolSize; i++){
contextObj = jsrsContextPool[ 'jsrs' + i ];
if ( !contextObj.busy ){
contextObj.busy = true;
return contextObj.id;
}
}
// if we got here, there are no existing free contexts
if ( jsrsContextPoolSize <= jsrsContextMaxPool ){
// create new context
var contextID = "jsrs" + (jsrsContextPoolSize + 1);
jsrsContextPool[ contextID ] = new jsrsContextObj( contextID );
jsrsContextPoolSize++;
return contextID;
} else {
alert( "jsrs Error: context pool full" );
return null;
}
}

function jsrsExecute( rspage, callback, func, parms, visibility ){
// call a server routine from client code
//
// rspage - href to asp file
// callback - function to call on return
// or null if no return needed
// (passes returned string to callback)
// func - sub or function name to call
// parm - string parameter to function
// or array of string parameters if more than one
// visibility - optional boolean to make container visible for debugging

// get context
var contextObj = jsrsContextPool[ jsrsGetContextID() ];
contextObj.callback = callback;

var vis = (visibility == null)? false : visibility;
contextObj.setVisibility( vis );


if ( jsrsPOST && ((jsrsBrowser == 'IE') || (jsrsBrowser == 'MOZ'))){
contextObj.POST( rspage, func, parms );
} else {
contextObj.GET( rspage, func, parms );
}

return contextObj.id;
}

function jsrsLoaded( contextID ){
// get context object and invoke callback
var contextObj = jsrsContextPool[ contextID ];
if( contextObj.callback != null){
contextObj.callback( jsrsUnescape( contextObj.getPayload() ), contextID );
}
// clean up and return context to pool
contextObj.callback = null;
contextObj.busy = false;
}

function jsrsError( contextID, str ){
alert( unescape(str) );
jsrsContextPool[ contextID ].busy = false
}

function jsrsEscapeQQ( thing ){
return thing.replace(/'"'/g, '\\"');
}

function jsrsUnescape( str ){
// payload has slashes escaped with whacks
return str.replace( /\\\//g, "/" );
}

function jsrsBrowserSniff(){
if (document.layers) return "NS";
if (document.all) return "IE";
if (document.getElementById) return "MOZ";
return "OTHER";
}

/////////////////////////////////////////////////
//
// user functions

function jsrsArrayFromString( s, delim ){
// rebuild an array returned from server as string
// optional delimiter defaults to ~
var d = (delim == null)? '~' : delim;
return s.split(d);
}

function jsrsDebugInfo(){
// use for debugging by attaching to f1 (works with IE)
// with onHelp = "return jsrsDebugInfo();" in the body tag
var doc = window.open().document;
doc.open;
doc.write( 'Pool Size: ' + jsrsContextPoolSize + '<br><font face="arial" size="2"><b>' );
for( var i in jsrsContextPool ){
var contextObj = jsrsContextPool[i];
doc.write( '<hr>' + contextObj.id + ' : ' + (contextObj.busy ? 'busy' : 'available') + '<br>');
doc.write( contextObj.container.document.location.pathname + '<br>');
doc.write( contextObj.container.document.location.search + '<br>');
doc.write( '<table border="1"><tr><td>' + contextObj.container.document.body.innerHTML + '</td></tr></table>' );
}
doc.write('</table>');
doc.close();
return false;
}

/*TERMINA jsrClient.js*/
  #3 (permalink)  
Antiguo 05/05/2004, 16:42
 
Fecha de Ingreso: marzo-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
¡¡¡solucion A Combos Dependientes!!!! (PARTE 3...)


/*jsrsServer.php*/

<?php

//
// jsrsServer.php - javascript remote scripting server include
//
// Orginal Author: Brent Ashley [[email protected]]
// PHP version : Sébastien Cramatte [[email protected]]
// Pierre Cailleux [[email protected]]
// Date : May 2001
//
// see jsrsClient.js for version info
//
// see license.txt for copyright and license info

function jsrsDispatch($validFuncs ){
$func = jsrsBuildFunc($validFuncs);

if ($func != ""){
$retval = "";

eval("\$retval = " . $func . ";");

if (strlen($retval)>0){
jsrsReturn($retval."");
} else {
jsrsReturn("");
}
} else {
jsrsReturnError("function builds as empty string");
}
}

function jsrsReturn($payload) {
global $C;

Print (
"<html><head></head><body onload=\"p=document.layers?parentLayer:window.pare nt;p.jsrsLoaded('"
. $C . "');\">jsrsPayload:<br>"
. "<form name=\"jsrs_Form\"><textarea name=\"jsrs_Payload\">"
. jsrsEscape($payload) . "</textarea></form></body></html>");
exit();
}

function jsrsEscape($str){
// escape ampersands so special chars aren't interpreted
$tmp = ereg_replace( "&", "&amp;", $str );
// escape slashes with whacks so end tags don't interfere with return html
return ereg_replace( "\/" , "\\/",$tmp);
}

/////////////////////////////
//
// user functions


function jsrsReturnError($str){
global $C;

// escape quotes
$cleanStr = ereg_replace("\'","\\'",$str);

// !!!! --- Warning -- !!!
$cleanStr = "jsrsError: " . ereg_replace("\"", "\\\"", $cleanStr);
print ("<html><head></head><body "
. "onload=\"p=document.layers?parentLayer:window.par ent;p.jsrsError('" . $C . "','" . urlencode($str) . "');\">"
. $cleanStr . "</body></html>" );
exit();
}

function jsrsArrayToString( $a, $delim ){
// user function to flatten 1-dim array to string for return to client
$d = "~";
if (!isset($delim)) $d = $delim;
return implode($a,$d);
}


function jsrsBuildFunc($validFuncs) {
global $F;

$func = "";

if ($F != "") {
$func = $F;


// make sure it's in the dispatch list
if (strpos(strtoupper($validFuncs),strtoupper($func)) ===false)
jsrsReturnError($func . " is not a valid function" );

$func .= "(";
$i = 0;

//--- To optimize ! ---
eval("global \$P$i;");
$Ptmp = "P". $i;

while ($$Ptmp!="") {
$parm = $$Ptmp;
$parm = substr($parm,1,strlen($parm)-2);
$func .= "\"" . $parm . "\",";
$i++;
eval("global \$P$i;");
$Ptmp = "P". $i;
}

if (substr($func,strlen($func)-1,1)==",")
$func = substr($func,0,strlen($func)-1);

$func .= ")";
}

return $func;
}

function jsrsEvalEscape($thing) {
$tmp = ereg_replace($thing,"\r\n","\n");
return $tmp;
}

function jsrsVBArrayToString($a,$delim) {
// --- not use in PHP see jsrsArrayToString method
return jsrsArrayToString($a,$delim);
}


?>

/*TERMINA jsrsServer.php*/
  #4 (permalink)  
Antiguo 05/05/2004, 16:45
 
Fecha de Ingreso: marzo-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
¡¡¡¡SOLUCION A COMBOS DEPENDIENTES !!!!! (PARTE 4...)

/*select_rs.php*/

<?php

require("jsrsServer.php.inc");
jsrsDispatch( "makeList modelList optionsList" );
/*EMPIEZAN MIS FUNCIONES*/

function empList($serietxt) {
return serializeSql("select IdUser, IdUser as iu from asiganciones where NumSerie='$serietxt'" );
}
/*TERMINAN MIS FUNCIONES*/


function makeList() {
//return serializeSql( "select makeID, makeName from makes order by makeName" );
return serializeSql( "select clave, clave as c2 from dependencias order by nombre" );
}

function modelList( $clave ){
return serializeSql("select Nombre as c1, ClaveDepto as c2 from departamentos where Clave='$clave'");
}

function optionsList( $ClaveDepto ){
return serializeSql2("select nombre, IdUser as c2,Appaterno, Apmaterno from empleados where ClaveDepto='$ClaveDepto'");
}
function serializeSql2( $sql ){
$link = mssql_connect("ARMANDO", "sa", "gamma");
$iddb=mssql_select_db ("inventario",$link);

$result = mssql_query ($sql);
$s = '';
$x = '';
$y = '';
while ($row = mssql_fetch_array($result)) {
$x=trim($row[0])." ".trim($row[2])." ".trim($row[3]);
$y=trim($row[1]);
$s .= ($x.'~'.$y)."|";
}
mssql_close($link);
return $s;
}



function serializeSql( $sql ){
$link = mssql_connect("ARMANDO", "sa", "gamma");
$iddb=mssql_select_db ("inventario",$link);

$result = mssql_query ($sql);
$s = '';
$x = '';
$y = '';
while ($row = mssql_fetch_array($result)) {
$x=trim($row[0]);
$y=trim($row[1]);
$s .= ($x.'~'.$y)."|";
}
mssql_close($link);
return $s;
}

?>
/*TERMINA select_rs.php*/
  #5 (permalink)  
Antiguo 05/05/2004, 16:51
 
Fecha de Ingreso: marzo-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
/*selectphp.js*/

// constants
var noValue = '-99'

// globals
var curOption = new Array();
var isLoaded = new Array();

function body_onLoad(){
// initialize lists
emptyList( 'lstMake' );
emptyList( 'lstModel');
emptyList( 'lstOptions' );
jsrsExecute( 'select_rs.php', cbFillMake, 'makeList' );
}

function lstMake_onChange(){
var val = this.options[this.selectedIndex].value;
if(val == noValue){
// don't allow novalue selection - revert to current
selectOption( this.name, curOption[this.name] )
} else {
curOption[this.name] = val;
// init dependent lists
emptyList( 'lstModel' );
emptyList( 'lstOptions');
window.status = 'Loading Model Selections...';
jsrsExecute( 'select_rs.php', cbFillModel, 'modelList', val );
}
}

function lstModel_onChange(){
var val = this.options[this.selectedIndex].value;
if(val == noValue){
selectOption( this.name, curOption[this.name] )
} else {
curOption[this.name] = val;
emptyList( 'lstOptions');
window.status = 'Cargando opciones de seleccion...';
jsrsExecute( 'select_rs.php', cbFillOptions, 'optionsList', val );
}
}

function lstOptions_onChange(){
var val = this.options[this.selectedIndex].value;
if(val == noValue){
selectOption( this.name, curOption[this.name] )
} else {
var msg = "Esto es lo que has elegido: \n\n";
msg += this.form.lstMake.options[this.form.lstMake.selectedIndex].value + "\n";
msg += this.form.lstModel.options[this.form.lstModel.selectedIndex].value + "\n";
msg += this.options[this.selectedIndex].value + "\n";
alert (msg);
}
}

function cbFillMake ( strMakes ){
window.status = '';
fillList( 'lstMake', strMakes );
}

function cbFillModel ( strModels ){
// callback for dependent listbox
window.status = '';
fillList( 'lstModel', strModels );
}

function cbFillOptions( strOptions ){
// callback for dependent listbox
window.status = '';
fillList( 'lstOptions', strOptions );
}

function fillList( listName, strOptions ){
// fill any list with options
emptyList( listName );

// always insert selection prompt
var lst = document.forms['QForm'][listName];
lst.disabled = true;
lst.options[0] = new Option('-- Please Select --', noValue);

// options in form "value~displaytext|value~displaytext|..."
var aOptionPairs = strOptions.split('|');
for( var i = 0; i < aOptionPairs.length; i++ ){
if (aOptionPairs[i].indexOf('~') != -1) {
var aOptions = aOptionPairs[i].split('~');
// lst.options[i + 1] = new Option(aOptions[1], aOptions[0]);
lst.options[i + 1 ] = new Option(aOptions[0], aOptions[1]);
// lst.values[]

// alert('el primer elemento'+aOptions[0]);
// alert('el segundo elemento'+aOptions[1]);

// this.form.lstModel.options[this.form.lstModel.selectedIndex].text
}
}

// init to no value
selectOption( listName, noValue );
isLoaded[listName] = true;
lst.disabled = false;
lst.onchange = eval( listName + "_onChange" );
// eval( "document.forms['QForm']['" + listName + "'].onchange=" + listName + "_onChange;" );
}

function emptyList( listName ){
var lst = document.forms['QForm'][listName];
lst.options.length = 0;
lst.onchange = null;
isLoaded[listName] = false;
curOption[listName] = noValue;
}

function selectOption( listName, optionVal ){
// set list selection to option based on value
var lst = document.forms['QForm'][listName];
for( var i = 0; i< lst.options.length; i++ ){
if( lst.options[i].value == optionVal ){
lst.selectedIndex = i;
curOption[listName] = optionVal;
return;
}
}
}


/*TERMINA selectphp.js*/
  #6 (permalink)  
Antiguo 05/05/2004, 16:55
 
Fecha de Ingreso: marzo-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
DEBO ACLARA TAMBIEN QUE MI BASE DE DATOS ESTA EN SQL SERVER 2000 PARA QUE LE HAGAN LAS MODIFICACIONES CORRESPONDIENTES PARA MySql PERO TAMBIEN PIDO QUE ME AVISEN SI LES SIRVIO O SI LLEGASEN A TENER UNA DUDA .... LAS CONEXIONES DEBEN CAMBIARLAS DE ACUERDO A SU bd Y A SUS TABLAS.... SI LES DA TIEMPO LAS PONEN EN UN ZIP PARA QUE SEAN MAS FACIL DE DESCARGARLAS OK????.....

ADEMAS COMO DIJE AL INICIO DE VIOLETA_MEXICO..... SI SUS DATOS NO ESTAN EN UNA BD DIGANME PARA PONER EL OTRO EJEMPLO QUE OCUPA ARRAYS OK??????
......
  #7 (permalink)  
Antiguo 05/05/2004, 17:06
Avatar de bhonox  
Fecha de Ingreso: julio-2002
Ubicación: Rengo-Viña del Mar-Stgo
Mensajes: 1.213
Antigüedad: 21 años, 8 meses
Puntos: 0
puedo hacerte una pregunta, tienes esto en algun sitio pare ver su funcionamiento?
__________________
Atte
Real BHONOX

Programador Cervecero! :borracho:
Lenguajes vengan a MI!!
  #8 (permalink)  
Antiguo 05/05/2004, 17:13
 
Fecha de Ingreso: marzo-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
AL MOMENTO NO.. PORQUE AUN NO SUBO MI APLICACION .. ESTOY TRABAJANDO DE COMO SERVIDOR LOCAL.... PERO PROXIMAMENTE LES DOY LA DIRECCION ES QUE ME FALTAN ALGUNOS REPORTES.. SI POR CIERTO SI ME AYUDAN A FORZAR A EL NAVEGADOR A QUE LANZE ACROBAT PARA QUE SE MUESTREN MIS REPORTES... JEJEJE Y BUENO LA FECHA TENTETIVA ES 28 O 29 DE MAYO this year... PERO HASTA AHORITA ES DE MANERA LOCAL... CREO QUE VALE LA ESPERA ....



------------------NO HAY CUCHARA-----------------
  #9 (permalink)  
Antiguo 06/05/2004, 00:43
Ex Colaborador
 
Fecha de Ingreso: junio-2002
Mensajes: 9.091
Antigüedad: 21 años, 9 meses
Puntos: 16
Hola,

¿Seguro que es legal que lo publiques asi? Porque por ahi hay un ""see license.txt for copyright and license info". Y por aqui no has puesto el license.txt. Puede que no se pueda distribuir ese codigo de esta forma. O puede que si. Pero tal como lo pones, no tenemos ni idea si lo que estas haciendo es legal o no.

Saludos.

PD: Tienes roto el teclado, estan siempre activadas las mayusculas
__________________
Josemi

Aprendiz de mucho, maestro de poco.
  #10 (permalink)  
Antiguo 06/05/2004, 06:21
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 2 meses
Puntos: 129
Yo creo que lo ideal es que pongas el link de donde se encuentra ese código (página web del autor) .. Si tu lo has adaptado (con el respeto a las licencias correspondientes del autor(res) original(es)) .. podrías subir tu código a cualquier página web para verlo de forma continua .. Aquí en el foro todo ese código en X mensajes y sin "coloreado" se hace complicado ver el código, seguirlo y copiarlo como para probarlo.

Un saludo,
__________________
Por motivos personales ya no puedo estar con Uds. Fue grato haber compartido todos estos años. Igualmente los seguiré leyendo.
  #11 (permalink)  
Antiguo 07/05/2004, 16:55
 
Fecha de Ingreso: marzo-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
OK... pero es que ahorita no es por ser mala onda pero no me acuerdo de la direccion donde lo encontre pero dejen buscarlo de nuevo y lo pongo .... por cierto si quieren encontrar cosas muy interesantes les recomiendo la pagina www.phpclasses.org
  #12 (permalink)  
Antiguo 07/05/2004, 16:56
 
Fecha de Ingreso: marzo-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
quiero aclarar que este codigo es de libre distribucion pero claro que voy a poner el nombre o la direccion de los autores...
  #13 (permalink)  
Antiguo 07/05/2004, 17:18
 
Fecha de Ingreso: marzo-2004
Mensajes: 65
Antigüedad: 20 años
Puntos: 0
que por cierto va incluida en el codigo... pero la direccion la pongo despues pq ando viendo lol de mi proyecto....



-------------------------NO HAY CUCHARA----------------------------------
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Tema Cerrado




La zona horaria es GMT -6. Ahora son las 19:49.