powered by simpleCommunicator - 2.0.60     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Нужна помощь
17 сообщений из 17, страница 1 из 1
Нужна помощь
    #38397221
DIALUXE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Здравствуйте уважаемые форумчане, прошу вашей помощи в решении одной проблемы...
Знаю на перед, что ответ где-то близок, но конкретно решить вопрос не могу.
Вот код:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
22.
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
function LoadPlayerInfo(playerid)
{
    format(query, 1000, "SELECT * FROM `players` WHERE `Owner` = '%s'", playername);
    mysql_query(query);
    mysql_store_result();
    //if(mysql_num_rows() == 1)
	//{
	    //forEx(bp, MAX_INV)
	    //{
	    //mysql_fetch_row_format(query, "|");
	    while(mysql_fetch_row_format(query, "|"))
	    {
	    sscanf(query, "p<|>is[32]",
//==============================================================================
		PlayerInfo[playerid][bpID][BackUse[playerid]],					//ид
		PlayerInfo[playerid][bpOwner][BackUse[playerid]]);				//владелец

/*		PlayerInfo[playerid][bpID][bp],					//ид
		PlayerInfo[playerid][bpOwner][bp]);				//владелец
*/
//==============================================================================
        BackPackUse[playerid] += 1;
	    }
	    //}
        mysql_free_result();
        return 1;
    //}
    //else
    //{
    //    BackPackUse[playerid] = 0;
    //}
    return 1;
}



Половина кода закоментировано, т.к. пробовал много версий, раз 50 всё переделывалось...
Возможно "//if(mysql_num_rows() == 1)" стоит вернуть.
После этого кода, значения
Код: php
1.
PlayerInfo[playerid][bpOwner][BackUse[playerid]]


или
Код: php
1.
PlayerInfo[playerid][bpOwner][bp]


будут использоваться в остальных частях кодов.

Чисто для теста использовал 2 строки с именами: Яблоко и Арбуз
Сделал вывод на 5 строк(тоже для теста) таким способом:
Код: php
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
			format(teststr1, sizeof(teststr1), "%s",PlayerInfo[playerid][bpOwner][bp]);
			SendMessage(playerid, -1, teststr1);
			format(teststr2, sizeof(teststr2), "%s",PlayerInfo[playerid][bpOwner][bp]);
			SendMessage(playerid, -1, teststr2);
			format(teststr3, sizeof(teststr3), "%s",PlayerInfo[playerid][bpOwner][bp]);
			SendMessage(playerid, -1, teststr3);
			format(teststr4, sizeof(teststr4), "%s",PlayerInfo[playerid][bpOwner][bp]);
			SendMessage(playerid, -1, teststr4);
			format(teststr5, sizeof(teststr5), "%s",PlayerInfo[playerid][bpOwner][bp]);
			SendMessage(playerid, -1, teststr5);


но выводит вот такое сообщение:
Код: php
1.
2.
3.
4.
5.
ЯАрбуз
Арбуз
рбуз
буз
уз



Очень надеюсь на вашу помощь, заранее благодарю за ответы.
...
Рейтинг: 0 / 0
Нужна помощь
    #38397224
DIALUXE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
forEx(bp, MAX_INV)
используется как
for(new bp; bp != MAX_INV; bp++)
...
Рейтинг: 0 / 0
Нужна помощь
    #38397227
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а что это за язык?
...
Рейтинг: 0 / 0
Нужна помощь
    #38397229
DIALUXE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft,

Pawno, но оно особо не отличается, т.к. тут ведь большая часть MySql
...
Рейтинг: 0 / 0
Нужна помощь
    #38397230
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DIALUXEmiksoft,

Pawno, но оно особо не отличается, т.к. тут ведь большая часть MySqlХм, не отличается от чего? От процедурного языка MySQL - очень отличается.
А проблема, насколько я понимаю, именно в использовании этого Pawno. Ваш Арбуз режет на буквы явно не MySQL.
...
Рейтинг: 0 / 0
Нужна помощь
    #38397231
DIALUXE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft,

Ну тут я с вами немного не соглашусь, дело не в павно, эти коды немного похожи на PHP, у меня в других местах тоже то и то используется, и проблем нет, а вот тут, немного проблемнее уже. Я думаю просто нужно грамотно расставить функции. Не так ли?
...
Рейтинг: 0 / 0
Нужна помощь
    #38397232
miksoft
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DIALUXE,

Если хотите - перенесу топик в подфорум по PHP. Возможно, там у него будет чуть больше шансов.
...
Рейтинг: 0 / 0
Нужна помощь
    #38397234
DIALUXE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
miksoft,

Ну если вы считаете что там действительно смогут помочь, то давайте.

Модератор: Тема перенесена из форума "MySQL".
...
Рейтинг: 0 / 0
Нужна помощь
    #38398229
Фотография Warstone
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вы сначала вопрос-то сформулируйте. Что вам не нравится-то?
...
Рейтинг: 0 / 0
Нужна помощь
    #38398231
DIALUXE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Warstone,

Мне кажется, в первом посте описан весь вопрос, и вся суть проблемы.
...
Рейтинг: 0 / 0
Нужна помощь
    #38398241
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Мне кажется, следует начать с отладки.
...
Рейтинг: 0 / 0
Нужна помощь
    #38398245
DIALUXE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleМне кажется, следует начать с отладки.
А можно поподробнее пожалуйста? Какие действия конкретно мне сейчас нужно сделать?
...
Рейтинг: 0 / 0
Нужна помощь
    #38398250
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DIALUXE,

У Вас есть код. В коде имеются вызовы функций. Этим функциям переданы какие-то аргументы. Запускаете выполнение кода и смотрите, что именно передается в качестве аргументов. Сравниваете эти данные с ожидаемыми. Если имеется полное совпадение - то переходите к следующему шагу программы. Если реальные данные не совпадают с ожидаемыми - смотрите, откуда они берутся и разбираетесь с источником данных. И так по шагам, до тех пор, пока не найдете ошибку или источник возникновения ошибки. Это может быть как ошибка алгоритма, так и ошибка в реализации этого алгоритма (перепутаны переменные, что-то не инициализировано и т.п.). Отладочный вывод можно направить в консоль, в файл или смотреть в IDE - это уж по ситуации.
...
Рейтинг: 0 / 0
Нужна помощь
    #38398252
DIALUXE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkle,

Ну по поводу совпадения данных написано в первом посте в конце, как выводит там написано, а должно:
Яблоко
Арбуз
*и тут 3 пустые строки*

P.S. Я в этих делах не ас, и по этому прошу помочью
...
Рейтинг: 0 / 0
Нужна помощь
    #38398255
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DIALUXE,

Вот строчка Вашего кода, которая, предположительно, делает что-то не то:

Код: php
1.
format(teststr1, sizeof(teststr1), "%s",PlayerInfo[playerid][bpOwner][bp]);



Итак, в функцию format переданы четыре аргумента:
teststr1 - что-то.
sizeof(teststr1) - вероятно, длина или количество элементов этого чего-то.
"%s" - это, вроде как строка... вроде должно передаваться как есть...
PlayerInfo[playerid][bpOwner][bp] - похоже на элемент массива.

На данном этапе у меня лично возникли следующие вопросы:
- что делает format , какие требует аргументы, что дает на выходе, да и вообще, где можно посмотреть мануал по ее использованию?
- что делает sizeof , какие требует аргументы, что дает на выходе...?
- что должно поступать на вход в качестве teststr1 и PlayerInfo[playerid][bpOwner][bp] ?
- что поступает на самом деле?
- что должно получиться на выходе (значения переменных после отработки этой строки)?

Лично я прямо сейчас не в состоянии ответить ни на один из вопросов. Возможно, покопавшись в документации и потратив какое-то время на изучение языка, на первую пару вопросов смогу дать ответ. Однако, эти вопросы, хоть и стоят впереди других, являются не первостепенными (предполагаю что используемый ЯП Вы знаете, раз уж взялись на нем писать). Ответы на остальные три вопроса из всех форумчан под силу только телепатам, но они находятся в бессрочном отпуске. Ну и Вам, конечно, как автору этого кода.

Ответите на эти пять вопросов, сверите ожидаемое и фактическое - и добро пожаловать к анализу следующей строки.


DIALUXEЯ в этих делах не асА тут никто не ас в Pawno. Прочтите название форума. Прочтите список форумов... Более того, поиск по слову "Pawno" выдает только этот топик. Предположу, что если и есть десяток специалистов по ЯП из почти двухсот тысяч зарегистрированных, и даже если хоть один увидел краем глаза Ваш топик, то вряд ли будет разбираться непонятно с чем. Отладка же - это стандартный процесс поиска ошибок безотносительно ЯП. Это могут в любом форуме подсказать. Как конкретно делать отладку кода на Pawno - ну не знаю... может сишники подскажут, раз уж у языков есть что-то общее... а может и нет (инструментарий то наверняка разный).
...
Рейтинг: 0 / 0
Нужна помощь
    #38398259
DIALUXE
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vkleВот строчка Вашего кода, которая, предположительно, делает что-то не то:
Код: php
1.
format(teststr1, sizeof(teststr1), "%s",PlayerInfo[playerid][bpOwner][bp]);


Данная строка делает как-раз то что нужно.


teststr1 - имя передаваемой строки, для отправки самого сообщения.
Пример:
Код: php
1.
2.
3.
4.
5.
6.
7.
new teststr1[100];
//использование
format(teststr1, sizeof(teststr1), "Текст");
SendMessage(teststr1);
//или
SendMessage("Текст");
//По как-бы одно и тоже, но... через формат можно сделать вывод каких-либо значений.



Код: php
1.
2.
3.
sizeof(teststr1) - если использовать "new teststr1[100];" то эта часть как раз и выведет размер 100
"%s" - выводит данные из переменной
PlayerInfo[playerid][bpOwner][bp] - та самая так называемая переменная



Про format и то что рядом с ним, рассказывать более подробнее просто нет смысла, т.к. дело не в нем, а конкретно в "function LoadPlayerInfo(playerid)"

vkleDIALUXEЯ в этих делах не асА тут никто не ас в Pawno. Прочтите название форума. Прочтите список форумов... Более того, поиск по слову "Pawno" выдает только этот топик. Предположу, что если и есть десяток специалистов по ЯП из почти двухсот тысяч зарегистрированных, и даже если хоть один увидел краем глаза Ваш топик, то вряд ли будет разбираться непонятно с чем. Отладка же - это стандартный процесс поиска ошибок безотносительно ЯП. Это могут в любом форуме подсказать. Как конкретно делать отладку кода на Pawno - ну не знаю... может сишники подскажут, раз уж у языков есть что-то общее... а может и нет (инструментарий то наверняка разный).
В Павно я как раз "ас", а вот в php+mysql нет.
На этом моменте хочу уточнить, разве я в самом вопросе хоть что-то сказал про сам павно? Дело не в нем, а как я уже указывал, в самой функции.

Я вот не могу понять вас, неужели в php нету функций:
mysql_query(query);
mysql_store_result();
mysql_num_rows()
?
Есть они, только некоторые чуть-чуть по другому пишутся.
...
Рейтинг: 0 / 0
Нужна помощь
    #38398270
vkle
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DIALUXEВ Павно я как раз "ас", а вот в php+mysql нет.
На этом моменте хочу уточнить, разве я в самом вопросе хоть что-то сказал про сам павно? Дело не в нем, а как я уже указывал, в самой функции.Так и с ней не понятно что не так... Проконтролировать PlayerInfo в процессе выполнения функции не пробовали?

Вот это не понимаю:автор
Код: php
1.
2.
3.
	    while(mysql_fetch_row_format(query, "|"))
	    {
	    sscanf(query, "p<|>is[32]",

Подозреваю, что таким образом Вы выдергиваете из результата запроса данные, как будто из простого текстового вывода... Как то совсем непривычно, и, может быть, для shell-скрипта и уместно... Но тут, когда есть вроде как штатные функции работы с mysql... я даже растерялся :-)
Выдергивания строки результата в ассоциативный массив с именами именам полей, что-то вроде mysqli_fetch_assoc или в простой массив - нет в павно?


DIALUXEЕсть они, только некоторые чуть-чуть по другому пишутся.Вероятно, ваши используемые mysql_* функции ближе к php-шным функциям класса mysqli.
...
Рейтинг: 0 / 0
17 сообщений из 17, страница 1 из 1
Форумы / PHP, Perl, Python [игнор отключен] [закрыт для гостей] / Нужна помощь
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]