[PHP][MySQL]Controle of record is geupdate

Pagina: 1
Acties:

  • RRX
  • Registratie: Mei 2000
  • Laatst online: 25-08 23:43

RRX

@life-

Topicstarter
ik heb volgend stukkie code:
PHP:
1
2
3
4
5
6
7
8
9
10
<?
if(mysql_query("UPDATE `gebruiker` SET `gebruiker_status_ID` = '2' WHERE `gebruiker_ID` = '$ID' AND `gebruiker_status_ID` = '4'"))
{
    echo"ge-update";
}
else
{
    echo"niet ge-update";
}
?>

Maar
PHP:
1
2
3
<?
mysql_query("UPDATE `gebruiker` SET `gebruiker_status_ID` = '2' WHERE `gebruiker_ID` = '$ID' AND `gebruiker_status_ID` = '4'") 
?>

returnt altijd TRUE, behalve als er echt een fout in de Query zit waardoor hij niet uitgevoerd kan worden.

ik heb als geprobeerd te werken met mysql_num_rows() maar dat werkt niet bij een UPDATE :( want hij returnt uiteraard geen rows.

ik heb ook de search al gebruikt, maar geen resultaalt :(

mijn T.net systeemspecspagina


  • SWINX
  • Registratie: Juni 2001
  • Laatst online: 02-06 23:18
je kunt het met mysql_num_rows doen, als dat een resultaat van 1 geeft is je record geupdated. Als het een resultaat van 0 geeft dus niet.

Mannen komen van Mars Tweakers, vrouwen van Venus Bokt


  • RRX
  • Registratie: Mei 2000
  • Laatst online: 25-08 23:43

RRX

@life-

Topicstarter
Op zondag 25 november 2001 22:49 schreef SWINX het volgende:
je kunt het met mysql_num_rows doen, als dat een resultaat van 1 geeft is je record geupdated. Als het een resultaat van 0 geeft dus niet.
dat heb ik al geprobeerd, maar dat werkt niet :?

mijn T.net systeemspecspagina


  • brammetje
  • Registratie: Oktober 2000
  • Laatst online: 12-01-2025
mysql_affected_rows ofzo..

ff op zoiets zoeken in de manual..

  • SWINX
  • Registratie: Juni 2001
  • Laatst online: 02-06 23:18
PHP:
1
2
3
4
5
6
<?
$sql = mysql_query("SELECT gebruiker_status_ID, WHERE `gebruiker_ID` = '$ID' AND `gebruiker_status_ID` = '4'");
$row = mysql_fetch_array($sql);
$gs_id = $row["gebruiker_status_ID"];
echo $gs_id;
?>

Als $gs_id nu gelijk is aan je net geupdate value (in dit geval dus 2) dan is het dus gelukt...

of met mysql_num_rows zou het toch ook moeten werken:
PHP:
1
2
3
4
5
6
7
8
<?
$sql = mysql_query("SELECT gebruiker_status_ID, WHERE `gebruiker_ID` = '$ID' AND `gebruiker_status_ID` = '4'");
$num = mysql_num_rows($sql);

$a = array('Mislukt','Gelukt');

echo $a[$num];
?>

zoiets zou toch ook moeten werken?

Mannen komen van Mars Tweakers, vrouwen van Venus Bokt


  • RRX
  • Registratie: Mei 2000
  • Laatst online: 25-08 23:43

RRX

@life-

Topicstarter
Op zondag 25 november 2001 23:02 schreef SWINX het volgende:
[..]
[/php]
zoiets zou toch ook moeten werken?
nope, bij allebij krijg ik de melding:
PHP:
1
2
3
<?
Warning: Supplied argument is not a valid MySQL result resource in */registreren.php on line 65
?>

ik heb het trouwens over UPDATE en niet over SELECT ;)

mijn T.net systeemspecspagina


  • RRX
  • Registratie: Mei 2000
  • Laatst online: 25-08 23:43

RRX

@life-

Topicstarter
Op zondag 25 november 2001 22:58 schreef PlayR het volgende:
mysql_affected_rows ofzo..

ff op zoiets zoeken in de manual..
met effected rows krijg ik de melding:
code:
1
Supplied argument is not a valid MySQL-Link resource

/edit:

ik hebdit al gevonden op de mysql site:
code:
1
2
3
4
5
6
mysql_query(&mysql,"UPDATE products SET cost=cost*1.25 WHERE group=10");
printf("%ld products updated",(long) mysql_affected_rows(&mysql));

If one specifies the flag CLIENT_FOUND_ROWS when connecting to mysqld, mysql_affected_rows() will return the number of rows matched by the WHERE statement for UPDATE statements. 

Note that when one uses a REPLACE command, mysql_affected_rows() will return 2 if the new row replaced and old row. This is because in this case one row was inserted and then the duplicate was deleted.

daar moet het wel mee lukken

mijn T.net systeemspecspagina

Pagina: 1