Archief - [prog] c# addslashes functie van php namaken

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

GizeH

Legacy Member
Ik wil data die uit sql server komt, in query zinnen opslaan die ik dan via php kan uitvoeren.
Hiervoor moet ik backslashes toevoegen voor single en double quotes.
Ik gebruik hiervoor string.Replace:

code:

string test = "de zijn met 'quote en "quote";
test = test.Replace("'", "\\'");
test = test.Replace("\"", "\\\"");

het probleem is dat dit niet teruggeeft wat ik wil...

Weet iemand hoe ik de addslashes functie van php in c# kan namaken?

QplQyer

Legacy Member
Toch redelijk logisch dat dat niet werkt?

Je vervangt eerst ' door \\ en dan \ door \\\, dan krijg je dus ipv je ' (single quote) \\\\\\ (zes backslashes) omdat je ' vervangen werd door \\ en die dan weer vervangen worden elk op hun beurt door een \\\.

Een oplossing kan zijn om die \\ te coderen in een teken dat zeker niet gebruikt kan worden en dan op het einde dat teken te vervangen door \\.

Aetemon

Legacy Member
QplQyer zei:
Je vervangt eerst ' door \\ en dan \ door \\\, dan krijg je dus ipv je ' (single quote) \\\\\\ (zes backslashes) omdat je ' vervangen werd door \\ en die dan weer vervangen worden elk op hun beurt door een \\\.
hij vervangt ' door \' en " door \" ;p
beter de c# code lezen :D



Code:
		public string ConvertTest(string source)
		{
			return source.Replace("\"", "\\\"").Replace("'", "\\'");
		}
geeft helemaal geen problemen hier..
komt uit op:
de zijn met \'quote en \"quote
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan