Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 12.01.2010, 22:13
Аватар для A.N.R.I
Аспирант
Отправить личное сообщение для A.N.R.I Посмотреть профиль Найти все сообщения от A.N.R.I
 
Регистрация: 10.06.2009
Сообщений: 37

Авторизация в модальном окне с помощью jQuery
Здраствуйте!
Создаю регистрацию в модальном окне. Окно создаю с помощью fancybox.
1. Почему модальное окно работает если в подключаемом файле не подключена библиотека jQuery ::mad24.gif::
2. Почему-то firebug в этом куске выводит не тот текст, который нужен, а код файла

И так:
Файл one.html - файл, где размещено модальное окно:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Документ без названия</title>
<link rel="stylesheet" href="js/fancybox/jquery.fancybox.css" type="text/css" />

<script type="text/javascript" src="blocks/jquery-1.3.2.js"></script>

<script type="text/javascript" src="js/fancybox/jquery.easing.1.3.js"></script>
<script type="text/javascript" src="js/fancybox/jquery.fancybox-1.2.1.pack.js"></script>

<script type="text/javascript">
$(document).ready(function() {
    $("a.enters").fancybox({"hideOnContentClick" : false});
});

</script>



</head>
<p><li><a  class="enters" href="login3.html">Регистрация</a></li></p>
<body>
</body>
</html>


Файл login3.html - здесь jQuery код авторизации и он подключаеться в окне
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=windows-1251" />
<title>Документ без названия</title>

<script type="text/javascript">

$(function() {
  $('#submit').click(function(){
		$('#container').append('<img src="images/loading.gif" alt="loading" id="loading" />');
		
		var login=$('#login').val();
		var pass=$('#pass').val();
		
		$.ajax({
			url:'enter.php',
			type:'POST',
			data:'login=' + login + '$pass=' +pass,
			
			success: function(result){
						 console.log(result);
				
				}
				   
		});
		return false;					  
	});
  
  });

</script>
</head>

<body>
<div id="container">
<form action="enter.php" method="post">
Login:<br />
<input name="login" type="text" value="login" id="login" />
<br />
Pasword:<br />
<input name="pass" type="password" value="pass" id="pass"/>

<br />
<input id="submit" name="submit" type="button" value="Send" />
</form>
</div>
</body>
</html>


Файл enter.php - обработчик
<?php include ("blocks/bd.php");
$login=$_POST['login'];
$pass=md5($_POST['pass']);
$query="SELECT login,pass FROM userlist WHERE login='?' AND pass='?'";
$stmt= $bd1->stmt_init();
if ($stmt->prepare($query)){
	$stmt->bind_param('ss',$login,$pass));
	$stmt->execute();
}
$refresh="<meta http-equiv='Refresh' content='0; URL=".$_SERVER['HTTP_REFERER']."'>";


 
 
if(mysql_num_rows($stmt)>0){setcookie('login',$login,time()+3600000);setcookie('pass',$pass,time()+3600000);print $refresh;}else {print "Sorry";}
 
?>


И файл bd.php - файл базы даных:
<?
$bd =mysql_connect ("localhost", "admin", "admin");
mysql_select_db ("work",$bd);

$bd1 = new mysqli('localhost', 'admin', 'admin', 'work'); 

?>


Подключения сделал в 2 версиях, по скольку про вторую я не знаю (на сколько понял - это новые фичи в mysql5, но могу ошибаться) и не умею ими пользоваться.

Если нужно могу сделать скрины, что выводит firebug или же дать все файлы.


Кстати, почему-то, если подключать fancybox к готовому проекту - оне не работает. Код:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="ru">
<head>

<meta http-equiv="Тест" content="text/html; charset=windows-1251" />
<link rel="stylesheet" href="images/style.css" type="text/css" />

<link type="text/css" rel="stylesheet" href="js/fancybox/jquery.fancybox.css"  />
<!-- Назва сторінок-->
<title>
<? 
if ($_GET['action']==news){print $index['news'];}
if ($_GET['action']==interior){print $index['interior'];}
if ($_GET['action']==technology){print $index['technology'];}
if ($_GET['action']==architecture){print  $index['architecture'];}
if ($_GET['action']==about){print $index['about'];}
if ($_GET['action']==admin){print $index['admin-panel'];}
if ($_GET['action']==profile){print $index['profile'];}
if ($_GET['sa']==statPanel){print $index['stats'];}
if ($_GET['sa']==showPosts){print $index['showPosts'];}
if ($_GET['sa']==trackIP){print $index['trackIP'];}
if ($_GET['sa']==showPermissions){print $index['showPermissions'];}
if ($_GET['sa']==account){print $index['account'];}
if ($_GET['sa']==setProfile){print $index['setProfile'];}
if ($_GET['action']==pm){print $index['pm'];}
if ($_GET['sa']==outbox){print $index['outbox'];}
if ($_GET['sa']==send){print $index['send'];}
if ($_GET['topic']){$myrow=mysql_query("SELECT title FROM data WHERE id='$_GET[topic]'");
	$result = mysql_fetch_array ($myrow);
	print " - ".$result["title"]."";
}
if ($_GET['action']==search){print $index['search'];}
if (!isset ($_GET['action']) && !isset($_GET['topic'])) {print $index['main'];}
?>


</title>

	<SCRIPT language=JavaScript>
			function x () {return;}
			function FocusText() {
			document.REPLIER.msg.focus();
			document.REPLIER.msg.select();
			return true; }
			function DoSmilie(addSmilie) {
			var revisedmsgage;
			var currentmsgage = document.REPLIER.msg.value;
			revisedmsgage = currentmsgage+addSmilie;
			document.REPLIER.msg.value=revisedmsgage;
			document.REPLIER.msg.focus();
			return;
			}
			function DoPrompt(action) { var revisedmsgage; var currentmsgage = document.REPLIER.qmsgage.value; }
		</SCRIPT>

<!--Скрпит авторизации-->
<script type="text/javascript" src="blocks/jquery-1.3.2.js"></script>
<script src="blocks/jquery.js"></script>

<script type="text/javascript" src="js/fancybox/jquery.easing.1.3.js"></script>
<script type="text/javascript" src="js/fancybox/jquery.fancybox-1.2.1.pack.js"></script>


<script type="text/javascript">
$(document).ready(function() {
    $("a.enters").fancybox();
});
</script>

<script>


$(function() {
	$("a[rel]").overlay(function() {
		var wrap = this.getContent().find("div.wrap");
		if (wrap.is(":empty")) {
			wrap.load(this.getTrigger().attr("href"));
		}
	});
});

</script>




</head>

<body>
  <p><li><a class='enters' href='images/delete.gif' name='enter'>".$rights['login']."</a></li></p>


В чем проблема - не могу понять. Сайт делаю через 1 файл - то есть подключаю все блоки в index.php. И еще все скрипты, которые нужны для для работы, подлючаю тоже в index файле

Если кто-то уже пробывал сделать - буду рад почитать. Гугл не помог
Ответить с цитированием
  #2 (permalink)  
Старый 14.01.2010, 19:11
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от A.N.R.I
1. Почему модальное окно работает если в подключаемом файле не подключена библиотека jQuery ::mad24.gif::
потому что он ее использует

Сообщение от A.N.R.I
2. Почему-то firebug в этом куске выводит не тот текст, который нужен, а код файла
в каком, этом?
Ответить с цитированием
  #3 (permalink)  
Старый 14.01.2010, 19:15
Аватар для A.N.R.I
Аспирант
Отправить личное сообщение для A.N.R.I Посмотреть профиль Найти все сообщения от A.N.R.I
 
Регистрация: 10.06.2009
Сообщений: 37

Сообщение от x-yuri Посмотреть сообщение
в каком, этом?
В login3.html .Я сначала проверяю работоспособность в подключаемом модальном окне, а потом уже буду подключать.

Может кто-то знает, как сделать авторизацию, как на teasernet.ru ?
Ответить с цитированием
  #4 (permalink)  
Старый 14.01.2010, 19:41
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

Сообщение от A.N.R.I
2. Почему-то firebug в этом куске выводит не тот текст, который нужен, а код файла
а что будет если в строке адреса этот URL написать?
Ответить с цитированием
  #5 (permalink)  
Старый 14.01.2010, 19:55
Аватар для A.N.R.I
Аспирант
Отправить личное сообщение для A.N.R.I Посмотреть профиль Найти все сообщения от A.N.R.I
 
Регистрация: 10.06.2009
Сообщений: 37

Сообщение от x-yuri Посмотреть сообщение
а что будет если в строке адреса этот URL написать?
О, спасибо, есть ошибка. Дужка была лишней, но все равно не работает. Теперь пишет:
Код:
<!--error--><br /> <b>Warning</b>: mysqli_stmt::bind_param() [<a href='function.mysqli-stmt-bind-param'>function.mysqli-stmt-bind-param</a>]: Number of variables doesn't match number of parameters in prepared statement in <b>Z:\home\localhost\www\latest\enter.php</b> on line <b>7</b><br /> <script language=JavaScript src='/denwer/errors/phperror_js.php'></script><!--error--><br /> <b>Warning</b>: mysql_num_rows(): supplied argument is not a valid MySQL result resource in <b>Z:\home\localhost\www\latest\enter.php</b> on line <b>15</b><br /> <script language=JavaScript src='/denwer/errors/phperror_js.php'></script>Sorry
Ответить с цитированием
  #6 (permalink)  
Старый 15.01.2010, 17:29
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

тебе подсказать переводчик?
Ответить с цитированием
  #7 (permalink)  
Старый 15.01.2010, 17:35
Аватар для A.N.R.I
Аспирант
Отправить личное сообщение для A.N.R.I Посмотреть профиль Найти все сообщения от A.N.R.I
 
Регистрация: 10.06.2009
Сообщений: 37

Сообщение от x-yuri Посмотреть сообщение
тебе подсказать переводчик?
Нет, но можно подсказать где ошибка. на сколько я понял, переменных не равно количеству параметров. Но не вижу где я боьше написал. Или я где то не прав?
Ответить с цитированием
  #8 (permalink)  
Старый 19.01.2010, 19:00
Аватар для A.N.R.I
Аспирант
Отправить личное сообщение для A.N.R.I Посмотреть профиль Найти все сообщения от A.N.R.I
 
Регистрация: 10.06.2009
Сообщений: 37

Пересмотрел еще несколько раз - ничего не заметил

Попробывал сделать так:

<?php include ("blocks/bd.php");
$login=$_POST['login'];
$pass=md5($_POST['pass']);
$query=mysql_query("SELECT * FROM userlist WHERE login='$login' AND pass='$pass'");
$stmt = $bd1->stmt_init();

$refresh="<meta http-equiv='Refresh' content='0; URL=".$_SERVER['HTTP_REFERER']."'>";


 
 
if((mysql_num_rows($query))>0){setcookie('login',$login,time()+3600000);setcookie('pass',$pass,time()+3600000);print $refresh;}else {print "Sorry";}
 
?>
Ответить с цитированием
  #9 (permalink)  
Старый 19.01.2010, 19:46
Аватар для x-yuri
Отправить личное сообщение для x-yuri Посмотреть профиль Найти все сообщения от x-yuri
 
Регистрация: 27.12.2008
Сообщений: 4,201

$query=[B]mysql_query[/B]("SELECT * FROM userlist WHERE login='$login' AND pass='$pass'");
$stmt = $bd1->[B]stmt_init[/B]();

т.е. ты думаешь, что если смешивать mysql и mysqli, то что-то будет работать? Может стоит начать думать?

выбираешь расширение (mysql или mysqli), внимательно читаешь документацию, берешь из нее какой-нибудь пример и переделываешь под свои нужды
Ответить с цитированием
  #10 (permalink)  
Старый 19.01.2010, 19:59
Аватар для A.N.R.I
Аспирант
Отправить личное сообщение для A.N.R.I Посмотреть профиль Найти все сообщения от A.N.R.I
 
Регистрация: 10.06.2009
Сообщений: 37

Сообщение от x-yuri Посмотреть сообщение
$query=[B]mysql_query[/B]("SELECT * FROM userlist WHERE login='$login' AND pass='$pass'");
$stmt = $bd1->[B]stmt_init[/B]();

т.е. ты думаешь, что если смешивать mysql и mysqli, то что-то будет работать? Может стоит начать думать?

выбираешь расширение (mysql или mysqli), внимательно читаешь документацию, берешь из нее какой-нибудь пример и переделываешь под свои нужды
Ну я знаю mysql, а второй я просто видел пример. Будет ли скрипт работать с старой версией???

От такой скрипт:

<?php include ("blocks/bd.php");
$login=$_POST['login'];
$pass=md5($_POST['pass']);
$query=mysql_query("SELECT * FROM userlist WHERE login='$login' AND pass='$pass'");


$refresh="<meta http-equiv='Refresh' content='0; URL=".$_SERVER['HTTP_REFERER']."'>";


 
 
if((mysql_num_rows($query))>0){setcookie('login',$login,time()+3600000);setcookie('pass',$pass,time()+3600000);print $refresh;}else {print "Sorry";}
 
?>

Но принажатии Send - Firebug пишет Sorry. Хотя логин и пасс верны

И еще, Хром, при нажатии enter (вместо клика мышкой по Send), напрямую обращаеться к файлу enter.php. Как сделать, что бы выполнялся код jquery??
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск