Views zählen

Status
Dieses Thema wurde gelöst! Zur Lösung gehen…

Loddar1

Erfahrenes Mitglied
Nein m.scatello es funktioniert nicht.
habe jetzt das hier und es funktioniert, ich weis bloß nicht ob das alles richtig ist?
PHP:
$stmt = $mysqli->prepare("SELECT * FROM tabelle WHERE ip LIKE '%".$useip."%' and tid LIKE '%".$_GET['tid']."%'");
$result = $stmt->execute();
$stmt->store_result();
if ($stmt->num_rows == "1") {
echo'Daten vorhanden';
}else{
echo'Daten NICHT vorhanden';
}

geht das auch mit $stmt->bind_param ?
Wenn ja Frage wie muß ich das mit den % zeichen machen ???
weil ohne funktioniert es nicht.
 

basti1012

Erfahrenes Mitglied
Nein m.scatello es funktioniert nicht.
Kein wunder
Wenn dein error reporting an ist , schätze ich das in Zeile 5, bei PHP 7, das error reporting sich beschweren wird.
Das hast du ja jetzt behoben.
Wenn ja Frage wie muß ich das mit den % zeichen machen ???
weil ohne funktioniert es nicht.
Kommt drauf an was du genau suchst.
Die % Zeichen davor und danach heißen ja das vor den gesuchten Wort ( IP ) und danach stehen darf was will.
Wenn du eine ip hast von 123456789
Dann funktioniert das
SQL:
$useip='123456789';
"SELECT * FROM tabelle WHERE ip LIKE '%$useip%'";
/*
Nachteil = auch diese ip's werden gefunden
123456789987
013123456789
220123456789343
*/
und auch das
"SELECT * FROM tabelle WHERE ip LIKE '$useip'";
funktioniet

besser wäre aber
"SELECT * FROM tabelle WHERE ip='$useip'";

Ich glaube das LIKE hier falsch ist , du suchst ja nach einer IP und nicht nach IP'S die die gleichen Zeichen haben
 

Loddar1

Erfahrenes Mitglied
Danke m.scatello es funktioniert.
Ich hatte es auch schon so probiert wie deine Antwort
besser wäre aber
muß wohl einen Fehler drin gehabt haben.
Hier jetzt mal mein Code:
PHP:
$stmt = $mysqli->prepare("SELECT * FROM tabelle WHERE ip = ? and tid = ?");
$uips = trim($useip);
$ip= $mysqli->real_escape_string ($uips);
$tids = IntVal($_GET['tid']);
$tid= $mysqli->real_escape_string ($tids);
$stmt->bind_param('si', $ip,$tid);
$result = $stmt->execute();
$stmt->store_result();
if ($stmt->num_rows == "1") {
echo'Daten vorhanden';
}else{
echo'Daten NICHT vorhanden in db speichern';
}
So wollte ich es haben und so funktioniert es auch!

Danke schön nochmal.
 
Status
Dieses Thema wurde gelöst! Zur Lösung gehen…