Pantalla de Acceso
Hola a todos... soy novato en el foro y novato novato en extjs aunque ya me he visto todos los videotutoriales y he leido hasta las tablas... y estoy esperando a que salgan mas...
Mi problema es que he hecho una pantalla de acceso y me la muestra bien y parace que funciona pero luego el submit no me funciona con el jsonstore de ninguna manera....entonces estaba intentando hacerlo sin jsonstore pero de todas maneras accediendo a la base de datos y tampoco... pero es que lo peor es que no me funciona ni sin base de datos (la base de datos funciona bien porque la he probado)....he visto que ese error es comun pero de lo que he leido no he conseguido corregir el mio... ahora pongo el codigo login.js y login.php porque el index.php no tiene nada solo las llamadas a la libreria que fuciona bien ya que he hecho otros ejemplos....
Gracias por la ayuda..
login.js
Ext.onReady(function(){
Ext.QuickTips.init(); // para mostrar los mensajes que le hacen falta datos
var media_store = new Ext.data.JsonStore({
url: 'login.php',
root: 'data',
baseParams: {
method: 'get'
},
id: 'id',
fields: [
{name: 'id'},
{name: 'nombre'},
{name: 'contrasena'},
{name: 'profesion'},
{name: 'telefono'}
],
remoteSort: true
});
var clock = new Ext.Toolbar.TextItem({id:'clock',text: '00:00:00 AM'});
var updateClock = function(){
Ext.getCmp('clock').setText(new Date().format('g:i:s A'));
}
//Configuration object for the task
var task = {
run: updateClock, //the function to run
interval: 1000 //every second
}
//creates a new manager
var runner = new Ext.util.TaskRunner();
runner.start(task); //start runing the task every one second
var statusbar = new Ext.Toolbar({
items:[clock]
});
var login = new Ext.FormPanel({
labelWidth:50,
url:'login.php',
frame:true,
title:'Acceso',
defaultType:'textfield',
monitorValid:true,
//store:media_store,
items:[{
fieldLabel:'Usuario',
width:150,
name:'login', //casilla de nombre usuario
allowBlank:false,
emptyText:'Nombre Usuario...'
},{
fieldLabel:'Clave',
width:150,
name:'pass',// casilla contraseña
inputType:'password',
allowBlank:false,
emptyText:'Contraseña...'
}],
buttons:[{
text:'Aceptar',
formBind: true,
handler:function(){
login.getForm().submit({
method:'GET'
//waitTitle:'Conectando',
//waitMsg:'Enviando datos...'
});
}
// },
// failure:function(){
// Ext.Msg.alert('Identificación incorrecta');
// }
}]
});
var win = new Ext.Window({
layout:'fit',
width:250,
height:175,
closable: false,
resizable: false,
plain: true,
border: false,
//modal:true,
items: [login],
//store:media_store,
bbar: statusbar
});
win.show();
});
_________________________________________________
login.php
<?php
$user = $_GET["nombre"];
if($user == "a"){
echo "ok";
} else {
echo "error";
}
// require_once 'Zend/Loader.php';
// Zend_Loader::registerAutoload();
//
//
// $db = Zend_Db::factory('Pdo_Mysql', array(
// 'host' => '127.0.0.1',
// 'username' => 'root',
// 'password' => '',
// 'dbname' => 'bdejemplo'
// ));
//
//
//Zend_Db_Table_Abstract::setDefaultAdapter($db);
//Zend_Registry::set('dbAdapter', $db);
//
//$usu = $_GET['nombre'];
//$pass = $_GET['contrasena'];
//
//echo $usu;
//echo $pass;
//$sql = "SELECT id FROM usuarios";
//$res = mysql_query ($sql);
//
//echo $res;
//
//$data=$db->fetchAll("SELECT * FROM usuarios'$usu'");
//$json = Zend_Json::encode($data);
//echo $json;
?>
Se puede ver todos los enredos que he hecho... un saludo...
Algún error en el firebug? si hace la llamada ajax al hacer el submit del formulario? el servidor esta respondiendo correctamente la pretición ajax?
veo que te falta implementar el "success" al hacer el submit, ahi es donde enviarías al usuario al lugar protegido.
saludos
[quote="spit"]... como se pone el codigo en una ventanita??? lo digo para hacerlo bien y segun las normas...[/quote]
Entre los tags [b][[/b]code[b]][/b] //código aqui dentro [b][/[/b]code[b]][/b]
Gracias por contestar.
Hola el Firebug... no se porque ahora no me funciona.... no se si al instalar el firefox 3.5.1 o cual ha sido el error pero selecciono en la consola el js y tal y me pone esto:
Failed to load source for: <!-- m -->http://localhost:8080/proyectos/aaaa/login.js<!-- m -->
El success es imprescindible... porque yo queria que luego despues de eso desaparece la ventana del login y saliera un formulario con los datos capturados del usuario que ha accedido....o tambien sino se puede hacer el success a la misma pagina que carga, es decir, al index.php??
Yo he hecho hace tiempo en una pagina web un acceso de usuario con get o post y submit a una base de datos y era sencillo.... sin embargo con store y este submit no consigo que me funcione...voy a seguir enredando a ver si lo consigo...gracias...
Una pregunta que acabo de leer el post de las normas... como se pone el codigo en una ventanita??? lo digo para hacerlo bien y segun las normas... un saludo.
¿Conoces a alguien que pueda responder esta pregunta? Comparte el link en Twitter o Facebook
Es necesario registrarse para poder participar en el foro! Si ya tienes una cuenta puedes entrar y comentar en este foro.