Ich klicke ständig auf Thema ignorieren, habe mich daran gewöhnt, dass da der Antwort-Button ist.
So true ![]()
Ich klicke ständig auf Thema ignorieren, habe mich daran gewöhnt, dass da der Antwort-Button ist.
So true ![]()
Besteht da die Möglichkeit auf die erste Variante? habe leider nichts dazu gefunden und andere Beispiele zeigen die zweite Variante auf.
Wozu?
Macht doch keinen Unterschied ![]()
Irgendwie raff ich das nicht, wenn der grün anzeigt drück ich und er geht trotzdem auf rot. Sinn?
Dacht ich mir auch so ![]()
Also bei mir hat er sogar beim grünen gestoppt und ist dann auf 0 runter xD
Aber ich brauche im Grunde nur ein true oder false.
Ich verstehe nicht ganz wofür...
Entweder du kommst in den Callback, den du über mysql_tquery angibst oder du landest in der Error Funktion.
Das impliziert doch schon dein true oder false ![]()
Dafür gibt es diesen schicken Callback: http://wiki.sa-mp.com/wiki/MySQL/R33#OnQueryError
+ MySQL Log ![]()
Von 350 bis 500.
Da ist doch klar, dass die Zahl auch größer 350 sein kann, nämlich bis 500.
Hier stehen genug Lösungen...
Nur um sie ein wenig zu ergänzen:
350+random(150);
Das gibt einen Wert zwischen 350-499 richtig wäre 350+random(151);
Da random(n) immer von 0-(n-1) geht ![]()
Und hier noch eine kleine Ergänzung:
Und die randomEx Funktion macht sich bissl besser als Makro:
//randomEx(min, max)
#define randomEx(%0,%1) (random((%1)-(%0)+1)+(%0))
Entweder Localhost (bzw port freigabe + externe ip), oder die bieten kostenlose Test-Server: https://ultra-h.com/
wozu ist das gvar plugin ?=
Das ist sowas wie PVar, nur halt nicht für Spieler spezifisch, sondern mit einer allgemeinen ID.
Also kann man auch für Fahrzeuge o.ä. verwenden ![]()
Hey, ich finde den Fehler nicht
Offensichtlich, verwendet das Skript eine andere MySQL Version, als das Plugin xD
Schau mal in das Include, welche MySQL Version dort verwendet wird ![]()
Ich verstehe das Prinzip noch nicht so ganz ![]()
Kann er sich dann frei bewegen und ist wie ein normaler Spieler, nur dass er sich nicht ausloggen darf?
Was ist, wenn er dann noch weiter cheatet? Ich meine diese Gefahr ist ja groß, da ja schließlich schon detected wurde, dass er diese Mods besitzt. Und ich weiß nicht ob 10std Admins dann online sind und das wäre ja quasi die Einladung für den Spieler xD
Ah, dann noch besser, dann lade crashdetect und poste den Log ![]()
Irgendwie kriege ich hier ein Crash wenn ich ein Neues Projekt erstelle
...was crasht, du oder der server?
und wenn du crasht, zeig mal crashcode..hast du mods installiert läuft samp sonst einwandfrei?
Du kannst die Funktion mysql_num_rows verwenden ![]()
Doofe Frage, aber wieso nutzt du R31, wenn es inzwischen schon R41-4 gibt? ![]()
Ich kenne nicht alle Funktionen von dem Include, aber eventuell gibt es ja sowas wie cache_num_rows() ![]()
Wenn es das nicht gibt und du weiterhin das Include nutzen magst, bitte poste es doch mit pastebin oder als Anhang ![]()
Ahh, okay ![]()
Also man kann Tabellennamen nicht escapen mit pdo auf diese Art und Weise.
Mach am Besten eine Whitelist für die Tabellennamen:
<?php
try
{
$pdo = new PDO('mysql:host=localhost;dbname=ibis', 'ibis', 'cD33', array(PDO::MYSQL_ATTR_INIT_COMMAND => 'SET NAMES utf8'));
}
catch(PDOException $e)
{
echo $e->getMessage();
exit;
}
function isTableOk($table)
{
switch($table)
{
case "users": case "auchok": return true;
}
return false;
}
if(!isTableOk($_GET["table"])) die("Ungültiger Tabellenname!");
$p0 = intval($_GET["p0"]);
$p1 = intval($_GET["p1"]);
$p2 = intval($_GET["p2"]);
$p3 = intval($_GET["p3"]);
$p4 = intval($_GET["p4"]);
$p5 = intval($_GET["p5"]);
$statement = $pdo->prepare("SELECT * FROM `".$_GET["table"]."` WHERE `id` IN (?,?,?,?,?,?)");
$statement->execute(array($p0,$p1,$p2,$p3,$p4,$p5));
while($row = $statement->fetch()) {
echo $row["username"]. "," ;
}
?>
Alles anzeigen
Kannst du n screen von deiner MySQL Tabelle machen? ![]()
$pdo = new PDO('mysql:host=localhost;dbname=ibis', 'ibis', 'pw');
Schreib das mal so:
Wie sieht denn der Code aus? ![]()
Hast den Spaltennamen richtig angegeben?
Da machst du ja auch Quatsch, dass ist so gar nicht das, was ich geschrieben hatte ![]()
<?php
$pdo = new PDO('mysql:host=localhost;dbname=ibis', 'ibis', 'X8roh7^7');
$p0 = intval($_GET["p0"]);
$p1 = intval($_GET["p1"]);
$p2 = intval($_GET["p2"]);
$p3 = intval($_GET["p3"]);
$p4 = intval($_GET["p4"]);
$p5 = intval($_GET["p5"]);
$statement = $pdo->prepare("SELECT * FROM `?` WHERE `id` IN (?,?,?,?,?,?)");
$statement->execute(array($_GET["table"],$p0,$p1,$p2,$p3,$p4,$p5));
while($row = $statement->fetch()) {
echo $row["spaltenname"]. "," ;
}
?>
Alles anzeigen
//Edit: Du musst den Spaltennamen angeben in row und keine Zahl, beim normalen fetch in pdo.
Du brauchst nicht MySQLi und PDO nutzen.
Prepared heißt nur, dass die einzelnen Variablen escaped werden, selbiges machst du mit mysqli escape string.
Theoretisch kannst du den Code von oben verwenden, dort ist schon alles escaped und SQL-Injections in dem Sinne sind nicht möglich.