Vraag & Antwoord

Webprogrammeren & scripting

(mysql) data opvragen, bewerken, terugplaatsen

3 antwoorden
  • Ik heb een aantal wipadressen en die wil ik aanpassen tot 4 keer 3 cijfers Nu haal ik de gegevens op uit de database en na verwerking zet ik ze weer terug. Althans, dat is de bedoeling, maar het lukt niet. Wat is wél de manier om het voor elkaar te krijgen. De input nesten in de opvraag routine werkt niet. result omnoemen in result2 helpt ook niet. include("config.php"); $db = mysql_connect($server,$user, $w8woord); $result = mysql_select_db($database,$db); $result = mysql_query("select * from iplocator",$db); if (!$result){echo "error: ".mysql_error();} $rows = mysql_num_rows($result); //will be 1 in our case for ($index = 0 ; $index < $rows; $index++) { $data = mysql_fetch_object($result); $ipadres=$data->ipadres; hier de code om waar nodig het ipadres aan te vullen tot 4 x 3 cijfers include("config.php"); $db = mysql_connect($server,$user, $w8woord); $result2 = mysql_select_db($database,$db); $result2 = mysql_query( "INSERT into iplocator (ipadres) values ('$ipadres') ON DUPLICATE KEY UPDATE ipadres='$ipadres';", $db);} [code:1:e26a6c5cb0][/code:1:e26a6c5cb0] Ik moet in ieder geval het oude ipadres vervangen door de nieuwe, maar ik moet wel de oude vrgelijken anders zal de key upadate nooit werken.
  • een paar dingen zijn raar: 1) je gebruikt de $index niet binnen je loop => waarschijnlijk moet je nog iets met je index doen. Wanneer niet, dan staat er dus maar 1 IP in je db en kan je het makkelijker handmatig doen... 2) je include nog een keer config en doet nog een keer een connect (volgens mij dus met dezelfde database) => dat is niet nodig. 3) waarom een insert ON DUPLICATE KEY? Je weet dat je ze vervangt, doe dus gewoon een UPDATE SET ipadres=$new_ip WHERE ip_adres=$old_ip 4) $result2 binnen je loop lees je nooit uit; ken dan ook geen resultaat er aan toe. Verder is er niets op aan te merken en zou het moeten werken. Probeer met bovenstaande opmerkingen je code op te schonen en daarna te debuggen door oud_ip, new_ip en je SQL te outputten. Succes!
  • Ik ben er al uit dankzij jouw uitleg, ik moest wat code weglaten: $query = "UPDATE iplocator SET ipadres = '$nipadres' WHERE ipadres='$ipadres'"; mysql_query($query) or die (mysql_error()); [code:1:1ded4a0fc5][/code:1:1ded4a0fc5]

Beantwoord deze vraag

Weet jij het antwoord op deze vraag? Registreer of meld je aan met je account

Dit is een gearchiveerde pagina. Antwoorden is niet meer mogelijk.