You are not logged in.

Schrubber

Beginner

  • "Schrubber" started this thread

Posts: 4

wcf.user.option.userOption53: Nein

  • Send private message

1

Wednesday, June 5th 2013, 8:06pm

[Gelöst] MapCycle-Datenbankabgleich funktioniert nicht

Guten Tag,

ich hab hier ein kleines Script geschrieben, was eine Datenbanktabelle auslesen soll & den dort stehenden Inhalt in die MapCycle.txt schreiben soll. Zur Übersicht hab ich die Schreib-Funktion erstmal weggelassen, sodass die Daten, welche in der Datenbank stehen, nur erstmal ausgegeben werden sollen. Jedoch liegt hier mein Problem:

Der Befehl SQL_TQuery() wird nicht ausgeführt, sondern einfach übersprungen. Keine Fehlermeldung in der Console oder beim kompilieren. Komme da irgendwie nicht mehr weiter :( Vielleicht hat einer von euch eine Idee?

Spoiler Spoiler

Source code

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
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
#include <sourcemod>

#define plugin_version "0.1 alpha"
#define plugin_name "Maple-Maniac"

new Handle:hDatabase = INVALID_HANDLE;
new Handle:serverid = INVALID_HANDLE;

public Plugin:myinfo =
{
	name = "Maple-Maniac",
	author = "Schrubber",
	description = "Easy MapCycle-Management for YOUR server",
	version = plugin_version,
	url = " "
};

public OnPluginStart() {
	serverid = CreateConVar("sm_maplemaniac_sid", "31", "ServerID for the database", FCVAR_PLUGIN);
	RegAdminCmd("sm_reloadmaplemaniac", ReloadMapleManiac, ADMFLAG_ROOT);    	
	InitDB();
}

public InitDB() {
	decl String:error[255];
	hDatabase = SQL_Connect("mapcycle", false, error, sizeof(error));
	if (hDatabase == INVALID_HANDLE) {
		SetFailState("SQL error: %s", error);
	}
	GetMapCycle();
}

public Action:ReloadMapleManiac(client, args) {
	InitDB();
	return Plugin_Handled;
} 

public GetMapCycle() {
	decl String:table[256], String:query[512];
	GetConVarString(serverid, table, sizeof(table));
	Format(query, sizeof(query), "SELECT mapcycle FROM `maplemaniac_current` WHERE serverid = '%d';",GetConVarInt(FindConVar("sm_maplemaniac_sid"))); 
	SQL_TQuery(hDatabase, SQL_GetInfo5, query);
}

public SQL_GetInfo5(Handle:owner, Handle:hndl, const String:error[], any:data) {
	new String:maps[255];
	LogMessage("Test: GetInfo5");
	if (hndl == INVALID_HANDLE) {
    	LogError("[Maple-Maniac] SQL Getting Maps Error: %s", error);
	} else if (SQL_FetchRow(hndl)) {
    	SQL_FetchString(hndl, 0, maps, sizeof(maps));
	}
	LogMessage(maps);
}


Es handelt sich um Zeile 42 (SQL_TQuery(hDatabase, SQL_GetInfo5, query), bzw. Zeile 45-Zeile 54 (public SQL_GetInfo5 { ... }..


Grüße,
Schrubber

This post has been edited 1 times, last edit by "Schrubber" (Jun 5th 2013, 9:59pm)


Bara

Professional

Posts: 834

wcf.user.option.userOption53: Ja

  • Send private message

2

Wednesday, June 5th 2013, 8:14pm

Wozu was eigenes schreiben wenn es ähnlich oder genau so schon gibt.
https://forums.alliedmods.net/showthread.php?t=179086

Schrubber

Beginner

  • "Schrubber" started this thread

Posts: 4

wcf.user.option.userOption53: Nein

  • Send private message

3

Wednesday, June 5th 2013, 8:21pm

Ist schwer zu erklären. Sagen wirs so: Die Funktionen, die ich noch einbauen möchte, sind mir dem von dem Herren geschriebenen Script nicht so einfach realisierbar. Er z.B: erstellt für den Server eine Tabelle mit genau 1ner Tabelle, wo er Zeile für Zeile eine Map einträgt. Das hat zur Folge, dass man für jeden Server, auf dem das Script läuft, eine eigene Tabelle erstellen muss. Ist für 2-3 Server noch übersichtlich, aber für meine größere Planung unvorteilhaft.

Aber davon abgesehen, hat das ja eigentlich nichts mit dem zu tun. Oder würde sich der Fehler beseitigen, wenn der Herr das Script nicht erstellt hätte? Glaube nicht :-/

TeC

Beginner

Posts: 45

wcf.user.option.userOption53: Ja

  • Send private message

4

Wednesday, June 5th 2013, 8:50pm

Habe das mal ein wenig umgestellt.
TeC has attached the following file:
  • maniac.sp (1.5 kB - 96 times downloaded - latest: Dec 24th 2023, 4:25am)

Schrubber

Beginner

  • "Schrubber" started this thread

Posts: 4

wcf.user.option.userOption53: Nein

  • Send private message

5

Wednesday, June 5th 2013, 9:36pm

Hey,

danke für die Antwort. Jedoch weiterhin das gleiche Problem: SQL_GetInfo5 wird NICHT aufgerufen.

TeC

Beginner

Posts: 45

wcf.user.option.userOption53: Ja

  • Send private message

6

Wednesday, June 5th 2013, 9:40pm

Hab ich natürlich vorher durchgetestet - läuft bei mir.

SQL_TConnect und Co. an deine MySQL Konfiguration angepasst? Logs?

Schrubber

Beginner

  • "Schrubber" started this thread

Posts: 4

wcf.user.option.userOption53: Nein

  • Send private message

7

Wednesday, June 5th 2013, 9:47pm

Hey,

gerade meine Logs durchgesehen. Hat wohl jemand den Spalten-Namen geändert & nicht bescheid gegeben.... Nun gehts :) Vielen Dank.

Grüße,
Schrubber

Similar threads