Register for your free account! | Forgot your password?

Go Back   elitepvpers > Coders Den > Web Development
You last visited: Today at 23:24

  • Please register to post and access all features, it's quick, easy and FREE!

Advertisement



PHP MYSQL ID vergleich

Discussion on PHP MYSQL ID vergleich within the Web Development forum part of the Coders Den category.

Reply
 
Old   #1
 
.Like's Avatar
 
elite*gold: 0
Join Date: Sep 2010
Posts: 389
Received Thanks: 33
PHP MYSQL ID vergleich

Hallo leute,
ich habe in eingabe feld in dem eine ID eingelesen wird.Das Eingabefeld etc. funktioniert auch, wenn ich eine ID eintrage wird diese automatisch in die Tabelle eingefügt.
Aber falls die ID mit der ID aus der tabelle übereinstimmt soll eine Fehlermeldung erscheinen.

Mein Code lautet wie folgt :

PHP Code:
$ID $_POST["username"];
$id2 "SELECT `id` from Tabelle1 where id = $ID";
$id3 mysql_query($id2);
$id4 mysql_fetch_array($id3);
if (
$ID == $id4){
    echo (
"ID BEREITS VORHANDEN !");

Es erscheint auch keinerlei Fehlermeldung, es funktioniert einfach nicht.
.Like is offline  
Old 05/06/2014, 18:19   #2


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
$id4 ist zu diesem Zeitpunkt wahrscheinlich ein Array. Du vergleichst ein Array mit einem Integer, da wird die Bedingung natürlich nie true sein.

Du solltest dem Array die Zahl vorher entnehmen, in deinem Fall wäre das Index 0 weil du nur eine Eigenschaft ausgewählt hast und man nunmal bei 0 anfängt zu zählen.
Mostey is offline  
Thanks
1 User
Old 05/06/2014, 18:24   #3
 
pr0Cellarum's Avatar
 
elite*gold: 60
Join Date: Nov 2013
Posts: 58
Received Thanks: 26
Eieiei, danke Mostey, ich bin wohl schon zu framework-verwöhnt...
Habe mir eben noch einmal die Definition der Funktion durchgelesen und es auch bemerkt ^^

Ich bin nur auf mysql_* eingegangen weil OP das auch verwendet
pr0Cellarum is offline  
Old 05/06/2014, 18:28   #4


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
Quote:
Originally Posted by pr0Cellarum View Post
^ oder

PHP Code:
$ID     mysql_real_escape_string($_POST["username"]); 
$query  "SELECT `id` from Tabelle1 where id = $ID"
$result mysql_query($query); 

if (!
$result) {
    echo (
"ID BEREITS VORHANDEN !");

Tante Edit ist gerade wedelnd mit ihrem Gehstock zu dir unterwegs und will dich verhauen, weil du den input nicht filterst

Das ist falsch.

$result ist nur false, wenn in der Query etwas schief ging, wenn du also einen MySQL Fehler bekommst. Ist die Query in Ordung, wird trotzdem ein Resultset zurückgeben, auch wenn keine Ergebnisse enthalten sind.

Da sollte man dann mit mysql_num_rows prüfen, ob Einträge vorhanden sind.

Btw. fällt mir auch gerade auf das mysql_* seit PHP 5.5 deprecated ist und daher nicht mehr genutzt werden sollte. Schau dir mal mysqli an.

€: Das mit dem mysqli ging an den TE, nicht an dich @pr0Cellarum
Mostey is offline  
Thanks
1 User
Old 05/06/2014, 18:32   #5
 
.Like's Avatar
 
elite*gold: 0
Join Date: Sep 2010
Posts: 389
Received Thanks: 33
Hey Mostey, wie entnehme ich der Array denn die Variable?
.Like is offline  
Old 05/06/2014, 18:40   #6


 
elite*gold: 1091
Join Date: Jun 2007
Posts: 19,836
Received Thanks: 7,180
Quote:
Originally Posted by .Like View Post
Hey Mostey, wie entnehme ich der Array denn die Variable?


Schau dir bitte mal die Basics über Arrays an.

Kleiner Tipp noch: Mit der Funktion var_dump kannst du dir das Array und deren Inhalt genau anschauen.
Mostey is offline  
Old 05/06/2014, 19:00   #7
 
.Like's Avatar
 
elite*gold: 0
Join Date: Sep 2010
Posts: 389
Received Thanks: 33
Leider bin ich mit den Arrays nicht vorran gekommen, eine Lösung habe ich abert trotzdem gefunden.

PHP Code:
$id2 "SELECT `id` from Tabelle1 where id = $ID";
$id3 mysql_query($id2);
$id4 mysql_num_rows($id3);
IF (
$id4 == 1){
    echo (
"ID IST BEREITES VERGEBEN!");

.Like is offline  
Old 05/06/2014, 21:35   #8
 
Mikesch01's Avatar
 
elite*gold: 203
Join Date: Sep 2007
Posts: 732
Received Thanks: 190
Hier eine bessere/andere Lösung:
PHP Code:
$ID mysql_real_escape_string($_POST['username']);
$sql mysql_query("SELECT `id` FROM Tabelle1 WHERE `id` = '".$ID."'");
$row mysql_fetch_assoc($sql);
if(
$row['username'] == $ID){
    echo (
"ID IST BEREITES VERGEBEN!");

Mikesch01 is offline  
Reply


Similar Threads Similar Threads
Mysql fehler 1130-Host 'xxxx' is not allowed to connect to this MySQL server
02/21/2017 - Metin2 Private Server - 3 Replies
Hallo Community, und zwar ich habe ein Problem wenn ich auf Navicat gehe und auf meiner DB zugreifen möchte steht dort Mysql fehler 1130-Host 'xxxx' is not allowed to connect to this MySQL server ich hoffe mir kannn jemand helfen oder mir es beheben..
Mysql fehler 1130-Host 'xxxx' is not allowed to connect to this MySQL server
10/18/2012 - Metin2 Private Server - 0 Replies
Ich brauche eure hilfe ich wollte einen P-server machen und benutzte Navicat für die DatenBank aber beim ersten mal ging es doch ich hatte dann die DB gelöscht,weil ich ein neues script hatte und dann wollte ich wieder eins machen aber es ging nicht so wie oben der Fehler ich bitte um hilfe danke :) aber bitte so schnell wie möglich um antwort danke Liebe Grüße : Silver2011
MySQL-Fehler ("socket:'/tmp/mysql.sock' doesn't exist)
10/10/2012 - Metin2 Private Server - 3 Replies
Ohai M2-Community, nachdem ich nun schon etliche Male versucht habe, MySQl 5.5 zu installieren, erscheint immer der gleiche Fehler und mir ist es nicht möglich mit der Datenbank zu verbinden. Fehler: http://i.epvpimg.com/48mUd.png
MySQL Navicat 1130-Host'5.xxx.xx.xxx' is not allowed to connect to the MySQL Server
08/07/2010 - Metin2 Private Server - 14 Replies
Hallo com, ich habe ein Problem mit Navicat. Undzwar habe ich diesen Fehler hier : "1130-Host'5.xxx.xx.xxx' is not allowed to connect to the MySQL Server" seid gestern. Ich dachte mir mal ich änder mein Navicat Passwort um... Als ich dies getan habe, und meinen Server rebootet habe und Navicat neugestartet habe, und ich mich wieder in Navicat einloggen wollte kam diese Fehlermeldung. Nun habe ich das Problem das ich mich nicht mehr mit Navicat connecten kann. Habe schon alles versucht...



All times are GMT +1. The time now is 23:25.


Powered by vBulletin®
Copyright ©2000 - 2026, Jelsoft Enterprises Ltd.
SEO by vBSEO ©2011, Crawlability, Inc.
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

Support | Contact Us | FAQ | Advertising | Privacy Policy | Terms of Service | Abuse
Copyright ©2026 elitepvpers All Rights Reserved.