Mysql query vanuit een $_POST variable werkt niet

Overzicht Reageren

Sponsored by: Vacatures door Monsterboard

Gerard Nijboer

Gerard Nijboer

04/08/2009 00:09:00
Quote Anchor link
Hallo,

Ik wil een lijst met gebruikers weergeven in mijn admin menu, maar aangezien ik de enige ben die het gaat beheren, wil ik ook m'n MySQL query kunnen bewerken vanuit deze pagina.
Daarvoor dacht ik een formulier te kunnen gebruiken die hij dan post en vervolgens uitvoert, maar dit blijkt niet zo goed te werken.

Want als ik de volgende query post:
- SELECT naam FROM nos_users WHERE naam='Gerard Nijboer'
Dan krijg ik het volgende terug:
- SELECT naam FROM nos_users WHERE naam=\'Gerard Nijboer\'
En vervolgens geeft ie een MySQL error

Kortom, hij is niet helemaal tevreden met de quotes.
Iemand een idee hoe ik dit op kan lossen?
Bij voorbaat dank!
 
PHP hulp

PHP hulp

24/11/2024 20:18:53
 
- SanThe -

- SanThe -

04/08/2009 00:12:00
 
Gerard Nijboer

Gerard Nijboer

04/08/2009 00:20:00
Quote Anchor link
Dat geeft inderdaad wel een goed resultaat!
Ik krijg alleen na het uitvoeren van de volgende query:
- SELECT naam FROM nos_users WHERE naam="Gerard Nijboer"
Het volgende terug:
- SELECT naam FROM nos_users WHERE naam=
Het resultaat klopt wel, maar de return query niet.

Is daar ook een oplossing voor?
 
- SanThe -

- SanThe -

04/08/2009 00:22:00
Quote Anchor link
Maar je krijgt het terug..... terug van wat?
 
Gerard Nijboer

Gerard Nijboer

04/08/2009 00:24:00
Quote Anchor link
Dat is de variabele $_POST[query] die wordt verzonden via het formulier waar ik de query op in kan voeren
Aangezien hij het post naar zichzelf en vervolgens de query uitvoert, laad ik de $_POST var direct weer in het formulier
Via dat formulier krijg ik dus terug wat ik de vorige keer heb gepost
 
- SanThe -

- SanThe -

04/08/2009 00:28:00
Quote Anchor link
En hoe ziet dat formulier er uit? En hoe haal je het op na posten en wat doe je er vervolgens mee?
 
Gerard Nijboer

Gerard Nijboer

04/08/2009 00:30:00
Quote Anchor link
Een paar stukjes uit m'n code:

Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
7
8
9
10
11
12
13
14
<?    //Unquote string
    $_POST[nos_admin_mysql_query] = stripslashes($_POST[nos_admin_mysql_query]);
    ?>

<?    //Set a query if no query was posted
    if (!$_POST[nos_admin_mysql_query])
        {

        $_POST[nos_admin_mysql_query] = "SELECT * FROM `".$nos_mysql_pref."users` ORDER BY `created` DESC";
        }

?>

<form action="" method="post" name="users">
<input type="text" name="nos_admin_mysql_query" value="<? echo $_POST[nos_admin_mysql_query];?>" size="100" style="font-style:normal; "/>&nbsp;<input type="submit" class="button" value="Verzenden" name="nos_submit" />
</form>

EN HIER DE AFHANDELING VAN DE UITGEVOERDE QUERY
 
- SanThe -

- SanThe -

04/08/2009 00:48:00
Quote Anchor link
Zet dit bovenin je script.
Code (php)
PHP script in nieuw venster Selecteer het PHP script
1
2
3
4
5
6
<?php
error_reporting(E_ALL);
ini_set("display_errors", 1);

// rest
?>

En haal de backtics uit je query, die horen daar niet.
 
Gerard Nijboer

Gerard Nijboer

04/08/2009 00:56:00
Quote Anchor link
Sorry van de backticks, was ik vorige keer ook al op gewezen maar moet ze er nog steeds uit gooien.

Ik heb gevonden wat het was geloof ik.
Al mijn $_POST[] en $_SESSION[] variables stonden zonder quotes tussen de haakjes [ ], en daar gaf ie een hoop errors van.
Nu ik dit heb aangepast lijkt het te werken.

Thanks!
 
- SanThe -

- SanThe -

04/08/2009 01:07:00
Quote Anchor link
Ik had dat reeds gezien, vandaar mijn post, maar je kunt er beter zelf achter komen, dan onthou je het beter voor de volgende keer.
Succes verder.
 



Overzicht Reageren

 
 

Om de gebruiksvriendelijkheid van onze website en diensten te optimaliseren maken wij gebruik van cookies. Deze cookies gebruiken wij voor functionaliteiten, analytische gegevens en marketing doeleinden. U vindt meer informatie in onze privacy statement.