Op deze website gebruiken we cookies om content en advertenties te personaliseren, om functies voor social media te bieden en om ons websiteverkeer te analyseren. Ook delen we informatie over uw gebruik van onze site met onze partners voor social media, adverteren en analyse. Deze partners kunnen deze gegevens combineren met andere informatie die u aan ze heeft verstrekt of die ze hebben verzameld op basis van uw gebruik van hun services. Meer informatie.

Akkoord

Vraag & Antwoord

Webprogrammeren & scripting

(mysql) data opvragen, bewerken, terugplaatsen

None
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

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