Zit al geruime tijd te Googlen maar kan het niet vinden. Ik zoek en stukje voorbeeld code voor het volgende.
Ik wil in mijn MySQL tabel in een bepaalde cel een waarde toevoegen als de plek leeg is, maar als de plek al gevuld is moet de waarde in een andere cel in de tabel geplaatst worden. Klinkt niet extreem maar zie nergens voorbeelden. Ben te onervaren om dit helemaal uit niks op te bouwen. Insert en Update zijn wel bekend bij mij.
Je zou eerst met een SELECT query kunnen kijken of die cel gevuld is en vervolgens kunnen bepalen in welke cel de waarde ingevoegd moet worden.

Echter vraag ik me af waarom je dit op deze manier zou willen. Normaal gesproken heb je maar 1 kolom voor een bepaald soort gegeven en niet meerdere. Wellicht dat je een foutje in je datamodel hebt zitten. Zou je misschien eens aan kunnen geven hoe je structuur eruit ziet?
Het SELECT verhaal kan ik een beetje volgen (uitwerken is 2e fase)
Even toelichting op de database
Vanuit de webpage kun je in een tekstje te schrijven bij een pasfoto wat opgeslagen wordt in de database. Als je ingelogd bent kun je pas een stukje tekst schrijven bij een pasfoto, de naam van de auteur komt er bij te staan. (Dit deel van het script heb ik goed werkend).
Je kunt echter ook de tekst bij de pasfoto herschrijven en dan wil ik dat de 1e auteur altijd blijft bestaan en dat de auteur die veranderingen aanbrengt in een aparte kolom wordt opgeslagen (de verbeterende auteur mag wel steeds overschreven worden.)
Aha, maar dan is het toch vrij eenvoudig. Als een bestaand bericht aangepast wordt, weet je immers dat er al een auteur voor dat bericht bestaat. Je weet dus ook direct dat je de bewerkende auteur in de andere kolom van dat record moet opslaan. Dit doe je eenvoudig met een update query.
Hmm ja dat is inderdaad erg goed tip. Bedankt, ik ga eens wat proberen.
Volgens mij moet het in slecht Nederlands zoiets worden:
haal die eene plek op
als die plek leeg is dan
plaats het dan daar
en als die plek al gevuld is
ga dan naar die andere plek en update die plek
<b>Het werkt , het was makkelijker dan ik dacht</b>Bedankt voor de tips
<?php
// checken of er al eerder tekst is geschreven
$auteur_aanwezig_check_ophalen = mysql_query("SELECT auteur FROM ".$mysqltabel." WHERE stamnr='$selectie2' ",$mysql) or die("query 7B op de database is mislukt");
$auteur_aanwezig_check = mysql_result ($auteur_aanwezig_check_ophalen,0,0); // resultaat is de naam van de auteur
if ($auteur_aanwezig_check=="") { // alleen de auteur plaatsen in de auteur kolom als deze leeg is
mysql_query("UPDATE ".$mysqltabel." SET auteur='$selectie5' WHERE stamnr='$selectie2'",$mysql) or die("query 7C op de database is mislukt");
} else {
mysql_query("UPDATE ".$mysqltabel." SET auteur2='$selectie5' WHERE stamnr='$selectie2'",$mysql) or die("query 7D op de database is mislukt"); }
}
?>

Reageren