SeNgiR Posted June 15, 2010 Share Posted June 15, 2010 Ik heb een probleem in php als ik op dezelfde pagina achter elkaar 2 functies wil aanspreken die een record toevoegen in de database. Hier zijn de 2 functies die ik aanspreek: function setAdressen($values, $recID = false) { $fm = new FileMaker(); $fm->setProperty('database', 'adressen_'); $fm->setProperty('username', '***'); $fm->setProperty('password', '***'); if($recID) { $newEdit =& $fm->newEditCommand('WEB2010', $recID, $values); $result = $newEdit->execute(); } else { $rec =& $fm->createRecord('WEB2010', $values); $result = $rec->commit(); } if(FileMaker::isError($result)) { echo "Error in 'setAdressen': " . $result->getMessage() . " "; echo "Errors: " . $result->getErrorString() . " "; $fm = NULL; exit(); return false; } else { if($recID) { return true; $fm = NULL; } else { return $rec->getRecordId(); $fm = NULL; } } } function setLeveringen($values, $recID = false) { $fm = new FileMaker(); $fm->setProperty('database', 'leveringen_'); $fm->setProperty('username', '***'); $fm->setProperty('password', '***'); if($recID) { $newEdit =& $fm->newEditCommand('WEB2010', $recID, $values); $result = $newEdit->execute(); } else { $rec =& $fm->createRecord('WEB2010', $values); $result = $rec->commit(); } if(FileMaker::isError($result)) { echo "Error in 'setLeveringen': " . $result->getMessage() . " "; return false; } else { if($recID) { return true; } else { return $rec->getRecordId(); } } } Als ik de 2 functies achter elkaar laat uitvoeren krijg ik de error: "Field Not Found". Laat ik dezelfde functies met dezelfde waardes uitvoeren op 2 verschillende pagina's dan krijg ik geen error. Wat is hier het probleem? Quote Link to comment
0 tackenco Posted June 16, 2010 Share Posted June 16, 2010 je gebruikt voor beide functies precies dezelfde variabelen en objecten. Het is mijn inschatting dat hier ergens een conflict ontstaat. Mede ook omdat je beide functies iets laat doen in verschillende databases, zelfde layoutnamen en dergelijke. Quote Link to comment
0 Jeroen Aarts Posted June 30, 2010 Share Posted June 30, 2010 je gebruikt voor beide functies precies dezelfde variabelen en objecten. Het is mijn inschatting dat hier ergens een conflict ontstaat.Mede ook omdat je beide functies iets laat doen in verschillende databases, zelfde layoutnamen en dergelijke. Door de lokale scope van de functies kan dit niet het probleem zijn. De variabelen worden overigens ook in elke functie opnieuw ingesteld. Is het probleem toch niet gewoon de $values array die een veld bevat die niet op de layout aanwezig is. Belangrijk is dat de velden die je gebruikt ook effectief aanwezig zijn op de layout waar je naar verwijst, WEB2010. Quote Link to comment
0 SeNgiR Posted July 1, 2010 Author Share Posted July 1, 2010 Neen dat is het probleem niet, alle velden zie ik gebruik staan wel degelijk op de layout. Andere oplossingen? Quote Link to comment
Question
SeNgiR
Ik heb een probleem in php als ik op dezelfde pagina achter elkaar 2 functies wil aanspreken die een record toevoegen in de database.
Hier zijn de 2 functies die ik aanspreek:
function setAdressen($values, $recID = false)
{
$fm = new FileMaker();
$fm->setProperty('database', 'adressen_');
$fm->setProperty('username', '***');
$fm->setProperty('password', '***');
if($recID)
{
$newEdit =& $fm->newEditCommand('WEB2010', $recID, $values);
$result = $newEdit->execute();
}
else
{
$rec =& $fm->createRecord('WEB2010', $values);
$result = $rec->commit();
}
if(FileMaker::isError($result))
{
echo "Error in 'setAdressen': " . $result->getMessage() . "
";
echo "Errors: " . $result->getErrorString() . "
";
$fm = NULL;
exit();
return false;
}
else
{
if($recID)
{
return true;
$fm = NULL;
}
else
{
return $rec->getRecordId();
$fm = NULL;
}
}
}
function setLeveringen($values, $recID = false)
{
$fm = new FileMaker();
$fm->setProperty('database', 'leveringen_');
$fm->setProperty('username', '***');
$fm->setProperty('password', '***');
if($recID)
{
$newEdit =& $fm->newEditCommand('WEB2010', $recID, $values);
$result = $newEdit->execute();
}
else
{
$rec =& $fm->createRecord('WEB2010', $values);
$result = $rec->commit();
}
if(FileMaker::isError($result))
{
echo "Error in 'setLeveringen': " . $result->getMessage() . "
";
return false;
}
else
{
if($recID)
{
return true;
}
else
{
return $rec->getRecordId();
}
}
}
Als ik de 2 functies achter elkaar laat uitvoeren krijg ik de error: "Field Not Found".
Laat ik dezelfde functies met dezelfde waardes uitvoeren op 2 verschillende pagina's dan krijg ik geen error.
Wat is hier het probleem?
Link to comment
3 answers to this question
Recommended Posts
Join the conversation
You can post now and register later. If you have an account, sign in now to post with your account.