Нужна ваша помощь, господа прораммисты

Статус
Закрыто для дальнейших ответов.

LeopART

Well-Known Member
Регистрация
10.05.2005
Сообщения
718
Art: а ты вобще то книжки по пхп листал хотя бы? :)
Я вот мало чего относительно пхп знаю, но еще ни в одной книге не видела такого синтаксиса...
гы.... извиняюсь за иронию, но это нечто
 

ArTi

Member
Регистрация
24.02.2006
Сообщения
22
Не надо так сильно наезжать... я ведь учусь.. да и ::-это была ошибка.. но не этом дело.. я вообще про скрипт..а не про синтакс...
да я откампелировал... и ничего.. работает...
ну я веть сказал..учуся я.. учусь....
а про php книжки.. то да..читал...

RUSH
echo "pass error";;-это я ошибси... когда я грил проверьте на правильность кода, я не имел введу синтаксис проверку....

Skitramp
А про ; после {} , то мне сказали, что можно их ставить а можно и нет... вот...
 

LeopART

Well-Known Member
Регистрация
10.05.2005
Сообщения
718
Art: на тебя не наезжают :) я так точно потому что сама не особо шарю. Просто тебе кто-что видит то и говорит. А если получается жестко - не обижайся. Просто мы тут дюже прямые :)
 

deMone

Злой страшный дядька
Регистрация
30.01.2006
Сообщения
937
Код:
<?php

include("lang.txt");
$uses= FILE($all_nicks);
$online = FILE($online_nicks);
$nick= $_POST['nick'];
$pass=$_POST['pass'];
$pass1= md5($pass)."\r\n";
Error_Reporting(E_ALL & ~E_NOTICE);

//проверяем ни в онлайне ли такой юзер.
for($i=0;$i<count($online);$i++){
	$on=explode("/", $online[$i]);
	$on_array = 1;
}
if($on_array == 1){
	foreach($on as $online_nick){
		if($nick == $online_nick){
			$online_error = 1;
			break;
		}else{
			$online_error=0;
			break;
		}
	}
		if($online_error == 1){
		echo "online error";
	}elseif($online_error !=1){
		for($p=0;$p<count($uses);$p++){
			$us = explode("/",$uses[$p]);
			if($nick == $us['0'] and $pass1 == $us['1']){
				echo "wse ok";
				break;
			}elseif($online){
				echo "pass error";
				break;
			}
		}
	}
}

?>

</body>
</html>
особенно внушила конструкция присваивания (или не при сваивания): $online_error != 1;
Вы её себе как понимаете?

а ещё вы совершенно не понимаете разницы между = и ==
 

v0rbis

selfcoded
Регистрация
02.05.2005
Сообщения
923
пришел злой дядька в0рбез и наоффтопил чуток:

чаты маст дай имхо не лучшее вложение программерской мысли и излишняя трата мощностей сервера и пропускной способности канала.
 

ArTi

Member
Регистрация
24.02.2006
Сообщения
22
deMone, ну знаете ли .. на то я и начинаюший...а кроме.. что я неправильно написал относительно = и == ?
А $online_error != 1;, это я просто написал, чтоб потом когда идет
if($online_error ==1){ ... } Там все нормально работало... так как когда я пишу $online_error = 1;, а потом прписываю
if($online_error ==1){ ... }else{ ... } , сразу идет не елсе... что мне не надо..

v0rbis, так я вот если смогу написать чат, то пойду и дальше..а если нет.. то нет... гы.. скажем так, это проба.
 

v0rbis

selfcoded
Регистрация
02.05.2005
Сообщения
923
= есть операция присвоения
== есть операция сравнения

$online_error = 0 нелзья писать?
 

ArTi

Member
Регистрация
24.02.2006
Сообщения
22
кончено можно.. так я и грю, сразу к елсе идет...
 

deMone

Злой страшный дядька
Регистрация
30.01.2006
Сообщения
937
Конструкция $online_error != 1 в принципе неправильна. То есть она означает примерно следующее: "присвой переменной $online_error значение, не равное единице". А какое тогда??? Сами-то подумайте!
 

ArTi

Member
Регистрация
24.02.2006
Сообщения
22
аа... ну терь понято.... а как можно лиёико написать??? только если во3можно дайте весь код
 

Creator

Administrator
Команда форума
Регистрация
03.03.2005
Сообщения
1 745
Конструкция $online_error != 1 в принципе неправильна. То есть она означает примерно следующее: "присвой переменной $online_error значение, не равное единице".
А вот тут ты не прав, эта конструкция говорит следующее: "Правда, что переменная НЕ равна 1? Если да, то TRUE, если нет, то FALSE"

Для примера, надо тебе, что бы $a был больше или меньше, но не равным 0, лучше написать не: if($a>0||$a<0), а: if($a!=0).
 

deMone

Злой страшный дядька
Регистрация
30.01.2006
Сообщения
937
Да, но как операцию присваивания её использовать нельзя.

Ещё можно было бы использовать например так:

$boolValue=($online_error != 1);
if ($boolValue) { … } else { … }

а так получается как раз то что я сказал.
 

Creator

Administrator
Команда форума
Регистрация
03.03.2005
Сообщения
1 745
2deMone: упс...я смотрел только твой код, который ты уже подправил, а топикстартера нет (сейчас посмотрел, на самом деле очиПятка).
Так что, все верно:)
 

ArTi

Member
Регистрация
24.02.2006
Сообщения
22
Я с этой проблемой разобралси.. спасиб, терь давайте отвечать на мой второй вопрос...а??
как мне личико написать??(попрошу вставлять готовый код. если вас не затруднит)
 

deMone

Злой страшный дядька
Регистрация
30.01.2006
Сообщения
937
а разве в сообщении #10 Creator недостаточно подробно всё объяснил?

В том же файле, где и чат (или в отдельном файле, как советовал Creator) пишете:
ЛОГИН_ОТПРАВИТЕЛЯ; ЛОГИН_ПОЛУЧАТЕЛЯ; СООБЩЕНИЕ
Потом читаете, парсите и смотрите, если ЛОГИН_ПОЛУЧАТЕЛЯ совпадает с текущим пользователем, то выводите СООБЩЕНИЕ. Если нет – то нет.

Вопросы?
 

deMone

Злой страшный дядька
Регистрация
30.01.2006
Сообщения
937

ArTi

Member
Регистрация
24.02.2006
Сообщения
22
Это че и как делать?
 

v0rbis

selfcoded
Регистрация
02.05.2005
Сообщения
923
parse, парсить... это все жаргонное, и означать может что угодно, но главное что - читать и разбирать. разбирать на нужное, отсеивать ненужное..обработка вобщем.
 
Статус
Закрыто для дальнейших ответов.
Верх Низ