login  Naam:   Wachtwoord: 
Registreer je!
 Forum

Data overzetten

Offline bertenz - 07/09/2009 00:44
Avatar van bertenzHTML beginner Hallo allemaal,

Ik heb voor mijn website een geheel nieuw systeem ontworpen waar ook nieuwe tabellen in de database nodig zijn. Nu wil ik al mijn data van de oude tabellen naar de nieuwe tabellen over zetten. Het gaat bij bijna alles wel goed, alleen bij enkele gegevens werkt het niet doordat waarschijnlijk niet alles wordt escaped (oa. de single quote).
Beide tabellen hebben de charset UTF-8 en ik sla altijd alles op dmv mysql_real_escape_string() na te checken op magic_quotes_gpc() om eventueel stripslashes() uit te voeren.
Weet iemand hoe het komt dat de data niet gewoon overgezet kan worden ?

Alvast bedankt.

6 antwoorden

Gesponsorde links
Offline ArieMedia - 07/09/2009 09:07
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
Als je PHPMyAdmin hebt kan je ook een sql-dump maken en deze later importeren.
Offline bertenz - 07/09/2009 09:33
Avatar van bertenz HTML beginner Dat zou normaal gesproken inderdaad wel kunnen, maar ik moet ongeveer 100 tabellen in 3 verschillende tabellen voegen. Hierbij ontstaan allemaal nieuwe ID's en het is echt onbegonnen werk om dit met de hand te doen...
Offline ArieMedia - 07/09/2009 09:48
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
Kan je niet een automatisch script maken die je oude tabel aanpast aan je nieuwe tabel. Dus je haalt alles uit je oude database, en maakt een eigen insert-query voor de nieuwe database =]
Offline bertenz - 07/09/2009 12:21
Avatar van bertenz HTML beginner Dat is juist hetgene waar ik een probleem mee heb.
Ik haal namelijk alle data uit de database, voer een aantal handelingen uit en zet ze daarna weer terug in de nieuwe tabellen. Echter krijg ik bij tekst waar een single quote in voorkomt problemen terwijl ik mysql_real_escape_string() gebruik...
Offline ArieMedia - 07/09/2009 12:24
Avatar van ArieMedia Gouden medaille

PHP ver gevorderde
Aha.. Maar zonder code kan ik niet zien wat er verkeerd gaat. Dus graag een code ter ondersteuning 
Offline bertenz - 07/09/2009 19:34
Avatar van bertenz HTML beginner Oh ja, kan wel eens handig zijn ja ;)

De code waar het fout gaat staat op http://plaatscode.be/137529/. De functies magic_quotes() en real_escape() heb ik hieronder staan.

  1. function real_escape($f_aText) // Real_escape for arrays
  2. {
  3. $i = 0;
  4. while(isset($f_aText[$i]))
  5. {
  6. $f_aText[$i] = mysql_real_escape_string($f_aText[$i]);
  7. $i++;
  8. }
  9. return $f_aText;
  10. }
  11.  
  12. function magic_quotes($f_aText) // Magic Quotes for arrays
  13. {
  14. {
  15. $i = 0;
  16. while(isset($f_aText[$i]))
  17. {
  18. $f_aText[$i] = stripslashes($f_aText[$i]);
  19. $i++;
  20. }
  21. }
  22. return $f_aText;
  23. }
Gesponsorde links
Dit onderwerp is gesloten.
Actieve forumberichten
© 2002-2024 Sitemasters.be - Regels - Laadtijd: 0.169s