Hoi,
bij deze website http://www.plaatsgratis.nl kan ik om de een of andere duistere reden geen 's plaatsen in de rubrieken/ subrubrieken.
terwijl dit script http://www.mijnadvertentiesite.nl (op mijn server) geen problemen heeft. Op plaatsgratis.nl staat precies het zelfde script.
Ik heb eventjes een test sub rubriek aan willen maken op plaatsgratis.nl en dan krijg ik deze melding:
You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 's', 'Kia's','0')' at line 1
Wat houdt dit precies in?
Alvast bedankt.
- 's probleem bij een script bij 1 provider
-
21-11-2007, 21:52 #1deleted Guest
's probleem bij een script bij 1 provider
-
In de schijnwerper
-
21-11-2007, 21:55 #2
- Berichten
- 1.264
- Lid sinds
- 18 Jaar
Door de ' in 's denkt MySQL dat je de querie bewerkt. Daarmee dat je fouten krijgt in je SQL.
Nu weet ik niet precies hoe je dit oplost maar ik dacht zoiets als /'s
Maar hier ben ik niet zeker van, dus wacht even op een bevestiging of verbetering ;).
-
21-11-2007, 21:58 #3deleted Guest
Hoi Justin,
Bedankt voor je antwoord.
Deze melding heb ik nu voor het eerst op meegemaakt. Vandaag het zelfde script ook op drie andere domeinnamen geinstalleerd en die hadden die problemen niet en bij mij zelf dus ook niet.
Ik vraag me af of dit met een server instelling te maken heeft?
-
21-11-2007, 22:22 #4
- Berichten
- 1.915
- Lid sinds
- 19 Jaar
Klopt, dit is een functie in php.ini die dus uit staat op deze server. Dit moet niet erg zijn, aangezien je zelf het script natuurlijk ook moet beveiligen, aangezien deze ook veilig moet zijn, ik geef nu dus al de melding, dat je script niet veilig is (Vertrouw nooit op je host)
Ik ben even kwijt hoe deze regel heet in de php.ini
-
21-11-2007, 23:46 #5
- Berichten
- 317
- Lid sinds
- 18 Jaar
Dit ligt eerder aan de programmeercode. Deze is niet correct geprogrammeerd waardoor je een vangnet uit de php.ini nodig hebt.
Je lost dit op door te escapen (\'s). Hiervoor bestaan functies in PHP. Vooraleer de waarde in het statement te plaatsen, kan je hem beter eens doorheen de onderstaande functie laten lopen.
PHP Code:<?php
// Quote variable to make safe
function quote_smart($value)
{
// Stripslashes
if (get_magic_quotes_gpc()) {
$value = stripslashes($value);
}
// Quote if not integer
if (!is_numeric($value)) {
$value = "'" . mysql_real_escape_string($value) . "'";
}
return $value;
}
?>
-
22-11-2007, 04:25 #6deleted Guest
Bedankt voor jullie reacties. Ik zal dit topic doorsturen naar mijn scripter om te kijken naar de opmerkingen van Dirk. Verder zal ik de klant eventjes vragen of hij het via zijn hoster (heeft een eigen dedicate server) naar php.ini wilt kijken als voorlopige oplossing om het snel werkend te krijgen.
-
23-11-2007, 15:48 #7
- Berichten
- 16
- Lid sinds
- 17 Jaar
PhP.ini aanpassing is gedaan..
-
23-11-2007, 17:06 #8deleted Guest
Hoi Dorien,
O.K. dat is mooi, ik heb jullie een mail gestuurd.
Groetjes,
Ronald
Plaats een
- + Advertentie
- + Onderwerp
Marktplaats
Webmasterforum
- Websites algemeen
- Sitechecks
- Marketing
- Domeinen algemeen
- Waardebepaling
- CMS
- Wordpress
- Joomla
- Magento
- Google algemeen
- SEO
- Analytics
- Adsense
- Adwords
- HTML / XHTML
- CSS
- Programmeren
- PHP
- Javascript
- JQuery
- MySQL
- Ondernemen algemeen
- Belastingen
- Juridisch
- Grafisch ontwerp
- Hosting Algemeen
- Hardware Info
- Offtopic