controleren ip en ip in database

Status
Niet open voor verdere reacties.

hijack966

Gebruiker
Lid geworden
24 mei 2006
Berichten
69
ik probeer het ip adres te vergelijken met het ip in de database tot nu toe heb ik:

PHP:
 $sql = "SELECT COUNT(*) FROM responses WHERE ip = ".$_SERVER['REMOTE_ADDR']."";  
    $res = mysql_query($sql);  
  
   
   if (!$getvote && mysql_num_rows($res)==0){

maar ik krijg de foutmelding:

mysql_num_rows(): supplied argument is not a valid MySQL result resource
 
Die fout geeft (meestal) aan dat er een fout in je query zit.

Je kunt het eens zo proberen:

PHP:
$sql = "SELECT COUNT(*) FROM responses WHERE ip = '" . $_SERVER['REMOTE_ADDR'] . "'";

Met quotes om het ip dus.

Daarnaast zou het ook kunnen zijn, dat je de naam van de tabel of het veld niet correct hebt overgenomen.
 
Laatst bewerkt:
thanxxx

inderdaad miste ik die quotes om

PHP:
[PHP$_SERVER['REMOTE_ADDR']]


hij doet het nu.:cool:
 
Laatst bewerkt:
ik heb het volgende;

PHP:
$sql = "SELECT COUNT(*) FROM responses WHERE ip = '" . $_SERVER['REMOTE_ADDR'] . "'";  
    $res = mysql_query($sql);  
  $resultaataantal = mysql_num_rows($res);
  echo $resultaataantal;

hij zegt dat $resultaataantal=1 terwijl de responses tabel leeg is, dus is er geen ip=$_SERVER['REMOTE_ADDR']

hoe kan dit??
 
Ik gebruik niet vaak COUNT(*) en ik kan me dus vergissen, maar daar zit het tellen van het aantal rijen al in.

Je hebt eigenlijk de volgende opties:

PHP:
$sql = "SELECT ip FROM responses WHERE ip = '" . $_SERVER['REMOTE_ADDR'] . "'";
$res = mysql_query($sql);
$resultaataantal = mysql_num_rows($res);

of:

PHP:
$sql = "SELECT COUNT(*) as aantal FROM responses WHERE ip = '" . $_SERVER['REMOTE_ADDR'] . "'";
$res = mysql_query($sql);
$row = mysql_fetch_assoc($res);
$resultaataantal = $row['aantal'];

De tweede manier ben ik niet 100% zeker van. Misschien dat een forummer met meer ervaring op dit gebied dat nog even kan verifiëren.
 
ik heb de eerste methode gebruikt en die werkt.

dus gebruik ik die.

nu selecteer je met de eerste code inderdaad i.p.v. de row alleen de ip en als hij die niet vindt geeft hij ook geen row weer.

thanx
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan