Ik heb een stuk tekst in een variabele (komt uit database). Deze wil ik scannen op het voorkomen van een tag: [voorbeeld:X]. Hierin is X variabel en een integer.
In een functie (welke $content returnt) heb ik nu de volgende code om hem te matchen, welke op zich een andere functie (getForm) aanroept:
De functie 'getForm()' ziet er momenteel als volgt uit:
Ik krijg de error: Unknown column '$1' in 'where clause'
Maar als ik tde mysql_query vervang met de Wordpress functie (onderstaande code) krijg ik de volgende output:
:1 - bestaat niet
:10 - bestaat niet
:16 - bestaat niet
Hierin zie je dat $id in dit geval wel een waarde heeft. Waarom bij de WHERE clause van 1e query dan niet?
In een functie (welke $content returnt) heb ik nu de volgende code om hem te matchen, welke op zich een andere functie (getForm) aanroept:
PHP:
1
| $content = preg_replace('/\[voorbeeld:(.*?)\]/', getForm('$1'), $content); |
De functie 'getForm()' ziet er momenteel als volgt uit:
PHP:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
| function getForm($id) { global $wpdb; global $databaseTable; $query = mysql_query(" SELECT id, formIdentity FROM ".$databaseTable." WHERE id=".trim($id)." ") or die (mysql_error()); $array = mysql_fetch_assoc($query) or die (mysql_error()); if(isset($array['formIdentity'])) { return $array['formIdentity'].':'.$id.' - formulier met id:'.$array['formIdentity']; } else { return $array.':'.$id.' - bestaat niet'; } } |
Ik krijg de error: Unknown column '$1' in 'where clause'
Maar als ik tde mysql_query vervang met de Wordpress functie (onderstaande code) krijg ik de volgende output:
PHP:
1
2
3
4
5
6
7
8
| $array = $wpdb->get_row(" SELECT id, formIdentity FROM ".$databaseTable." WHERE id=".trim($id)." ",ARRAY_A); |
:1 - bestaat niet
:10 - bestaat niet
:16 - bestaat niet
Hierin zie je dat $id in dit geval wel een waarde heeft. Waarom bij de WHERE clause van 1e query dan niet?
You cannot not communicate