Hoe kan ik een parameter mee geven aan een routine in mysql
Danny van Kempen
12/12/2014 20:01:44Hoe kan ik een specifieke parameter mee geven aan een routine in mysql met PHP?
Code (php)
1
2
3
4
5
6
7
8
9
10
2
3
4
5
6
7
8
9
10
public function SelectSingleAccount($accountId)
{
$Config = new Config();
$mysqli = $Config->OpenConnection();
$result = mysqli_query($mysqli, "CALL SelectSingleAccount") or die("Query fail: ". mysqli_error());
$BusinessObject = new DL_Account();
$ArrayResult = $BusinessObject->CreateObjectArray($result);
return $ArrayResult;
}
{
$Config = new Config();
$mysqli = $Config->OpenConnection();
$result = mysqli_query($mysqli, "CALL SelectSingleAccount") or die("Query fail: ". mysqli_error());
$BusinessObject = new DL_Account();
$ArrayResult = $BusinessObject->CreateObjectArray($result);
return $ArrayResult;
}
PHP hulp
11/12/2024 22:03:45Tip: gebruik geen beginnende hoofdletters in je variabelen. Gebruik camelCase, dit is leesbaarder.
Je vraag zelf snap ik alleen niet, waar wil je een variabele meegeven? Je doet nu gewoon de functie aanspreken i.p.v een query te doen naar de database als ik het goed begrijp.
Je vraag zelf snap ik alleen niet, waar wil je een variabele meegeven? Je doet nu gewoon de functie aanspreken i.p.v een query te doen naar de database als ik het goed begrijp.
No One
22/12/2014 14:03:58Code (php)
1
$result = mysqli_query($mysqli, "CALL SelectSingleAccount('$accountid', 'var2', 0)") or die("Query fail: ". mysqli_error());
even korte uitleg: PHP parsed elke string tussen doublequotes, dus dan kun je $accountid gewoon typen. heb je singlequotes, dan moet je dus gebruik maken van .:
Of als je dat niet bedoelt: In the routine declareer je iedere variable die je wil hebben.
lees ook: http://dev.mysql.com/doc/refman/5.0/en/create-procedure.html
Nog 1 vraag, waarom open je de config pas in die functie? of retourneert OpenConnection een bestaande mysqli als de connectie al open was? Als dat niet het geval is, dan krijg je nu dus meerdere connecties tegelijkertijd ;)