Das der Error:
[22:41:28] [ERROR] CMySQLQuery::Execute[] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
Was soll ich machen?
Das der Error:
[22:41:28] [ERROR] CMySQLQuery::Execute[] - (error #1064) You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near '' at line 1
Was soll ich machen?
Dann zeig uns mal deinen Syntax vom Script, eher gesagt die Datenbank.
Das script hat keine Errors
Errors nicht, aber einen Fehler in einem MySQL Query. Das entsprechende Query sollst du posten, je nach dem wann der Fehler im Log erscheint kannst du herausfinden, welches Query das ist.
Wie das bekomme nur diese log meldung
Ja, die weist dich darauf hin, dass in einem deiner MySQL Queries ein Fehler ist. In welchem das ist kann man nur anhand dieser Zeile nicht sagen.
Allso immer wo am ende "return 1" steht bekomm ich als warning, unreachable code
//Schein für Waffen
ocmd:waffenschein(playerid, params[])
{
if(!IsPlayerInRangeOfPoint(playerid,7,1366.1042,-1275.4039,13.5469))return SendClientMessage(playerid, COLOR_GREY, "Du kannst den Waffenschein nur am Ammunation erwerben");
{
if(sInfo[playerid][level]<3)return SendClientMessage(playerid, COLOR_GREY, "Du musst mindestens das 3. Level haben um einen Waffenschein zu erhalten.");
if(sInfo[playerid][waffenschein] == 0)
{
new pgeld = GetPlayerMoneyEx(playerid);
if(pgeld >= 35000)
{
sInfo[playerid][waffenschein] =1;
GivePlayerMoneyEx(playerid,-35000);
SendClientMessage(playerid,COLOR_GREEN,"Herzlichen Glückwusch! Du besitzt nun den {FFFFFF}Waffenschein.");
return 1;
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Geld mit. Der Waffenschein kostet 35000{05FF00}${FFFFFF}.");
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast bereits einen {FFFFFF}Waffenschein.");
}
return 1;
}
//Schein für Flugzeuge
ocmd:flugschein(playerid, params[])
{
if(!IsPlayerInRangeOfPoint(playerid,7,413.8100,2537.9595,19.1484))return SendClientMessage(playerid, COLOR_GREY, "Du kannst den Flugschein nur am Flughafen erwerben.");
{
if(sInfo[playerid][flugschein] == 0)
{
new pgeld = GetPlayerMoneyEx(playerid);
if(pgeld >= 25000)
{
sInfo[playerid][flugschein] =1;
GivePlayerMoneyEx(playerid,-25000);
SendClientMessage(playerid,COLOR_GREEN,"Herzlichen Glückwusch! Du besitzt nun den {FFFFFF}Flugschein.");
return 1;
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Geld mit. Der Flugschein kostet 25000{05FF00}${FFFFFF}.");
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast bereits einen {FFFFFF}Flugschein.");
}
return 1;
}
//Schein fürs Boots
ocmd:bootsschein(playerid, params[])
{
if(!IsPlayerInRangeOfPoint(playerid,7,154.6610,-1943.4832,3.7734))return SendClientMessage(playerid, COLOR_GREY, "Du kannst den Bootsschein nur am Bootssteg erwerben.");
{
if(sInfo[playerid][bootsschein] == 0)
{
new pgeld = GetPlayerMoneyEx(playerid);
if(pgeld >= 7500)
{
sInfo[playerid][bootsschein] =1;
GivePlayerMoneyEx(playerid,-7500);
SendClientMessage(playerid,COLOR_GREEN,"Herzlichen Glückwusch! Du besitzt nun den {FFFFFF}Bootsschein.");
return 1;
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Geld mit. Der Bootsschein kostet 7500{05FF00}${FFFFFF}.");
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast bereits einen {FFFFFF}Bootsschein.");
}
return 1;
}
//Schein fürs Angeln
ocmd:angelschein(playerid, params[])
{
if(!IsPlayerInRangeOfPoint(playerid,7,358.9134,-2072.3049,10.6953))return SendClientMessage(playerid, COLOR_GREY, "Du kannst den Angelschein nur am Bootssteg erwerben.");
{
if(sInfo[playerid][angelschein] == 0)
{
new pgeld = GetPlayerMoneyEx(playerid);
if(pgeld >= 500)
{
sInfo[playerid][angelschein] =1;
GivePlayerMoneyEx(playerid,-500);
SendClientMessage(playerid,COLOR_GREEN,"Herzlichen Glückwusch! Du besitzt nun den {FFFFFF}Angelschein.");
return 1;
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Geld mit. Der Angelschein kostet 500{05FF00}${FFFFFF}.");
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast bereits einen {FFFFFF}Angelschein.");
}
return 1;
}
Das könnte wohl die lösung sein
Nein, für den Error nicht, aber du kannst die return's mit der jeweiligen Warnung einfach entfernen.
Warum? Weil du durch die ganzen else's alle Fälle abdeckst, sodass dieses return am Ende niemals aufgerufen werden kann, somit ist es unnötig, daher die Warnung.
Also wie ist das jz richtig geschrieben?:
//Schein für Waffen
ocmd:waffenschein(playerid, params[])
{
if(!IsPlayerInRangeOfPoint(playerid,7,1366.1042,-1275.4039,13.5469))return SendClientMessage(playerid, COLOR_GREY, "Du kannst den Waffenschein nur am Ammunation erwerben");
{
if(sInfo[playerid][level]<3)return SendClientMessage(playerid, COLOR_GREY, "Du musst mindestens das 3. Level haben um einen Waffenschein zu erhalten.");
if(sInfo[playerid][waffenschein] == 0)
{
new pgeld = GetPlayerMoneyEx(playerid);
if(pgeld >= 35000)
{
sInfo[playerid][waffenschein] =1;
GivePlayerMoneyEx(playerid,-35000);
SendClientMessage(playerid,COLOR_GREEN,"Herzlichen Glückwusch! Du besitzt nun den {FFFFFF}Waffenschein.");
return 1;
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Geld mit. Der Waffenschein kostet 35000{05FF00}${FFFFFF}.");
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast bereits einen {FFFFFF}Waffenschein.");
}
return 1;
}
//Schein für Flugzeuge
ocmd:flugschein(playerid, params[])
{
if(!IsPlayerInRangeOfPoint(playerid,7,413.8100,2537.9595,19.1484))return SendClientMessage(playerid, COLOR_GREY, "Du kannst den Flugschein nur am Flughafen erwerben.");
{
if(sInfo[playerid][flugschein] == 0)
{
new pgeld = GetPlayerMoneyEx(playerid);
if(pgeld >= 25000)
{
sInfo[playerid][flugschein] =1;
GivePlayerMoneyEx(playerid,-25000);
SendClientMessage(playerid,COLOR_GREEN,"Herzlichen Glückwusch! Du besitzt nun den {FFFFFF}Flugschein.");
return 1;
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Geld mit. Der Flugschein kostet 25000{05FF00}${FFFFFF}.");
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast bereits einen {FFFFFF}Flugschein.");
}
return 1;
}
//Schein fürs Boots
ocmd:bootsschein(playerid, params[])
{
if(!IsPlayerInRangeOfPoint(playerid,7,154.6610,-1943.4832,3.7734))return SendClientMessage(playerid, COLOR_GREY, "Du kannst den Bootsschein nur am Bootssteg erwerben.");
{
if(sInfo[playerid][bootsschein] == 0)
{
new pgeld = GetPlayerMoneyEx(playerid);
if(pgeld >= 7500)
{
sInfo[playerid][bootsschein] =1;
GivePlayerMoneyEx(playerid,-7500);
SendClientMessage(playerid,COLOR_GREEN,"Herzlichen Glückwusch! Du besitzt nun den {FFFFFF}Bootsschein.");
return 1;
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Geld mit. Der Bootsschein kostet 7500{05FF00}${FFFFFF}.");
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast bereits einen {FFFFFF}Bootsschein.");
}
return 1;
}
//Schein fürs Angeln
ocmd:angelschein(playerid, params[])
{
if(!IsPlayerInRangeOfPoint(playerid,7,358.9134,-2072.3049,10.6953))return SendClientMessage(playerid, COLOR_GREY, "Du kannst den Angelschein nur am Bootssteg erwerben.");
{
if(sInfo[playerid][angelschein] == 0)
{
new pgeld = GetPlayerMoneyEx(playerid);
if(pgeld >= 500)
{
sInfo[playerid][angelschein] =1;
GivePlayerMoneyEx(playerid,-500);
SendClientMessage(playerid,COLOR_GREEN,"Herzlichen Glückwusch! Du besitzt nun den {FFFFFF}Angelschein.");
return 1;
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast nicht genügend Geld mit. Der Angelschein kostet 500{05FF00}${FFFFFF}.");
}
else
return SendClientMessage(playerid,COLOR_RED,"Du hast bereits einen {FFFFFF}Angelschein.");
}
return 1;
}
Das return 1 in Zeile 23 / 47 / 71 / 95 löschen.
OK jz habe ih aber immernoch den fehler mit den mysql logs, return seind weg und warnings auch