Problemen oplossen met de rechten, Microsoft-foutmeldingen en MySQL-foutmeldingen in Dreamweaver.
De gebruikersinterface van nieuwere versies van Dreamweaver is vereenvoudigd. Daarom zijn sommige opties die in dit artikel worden beschreven, niet beschikbaar in nieuwere versies van Dreamweaver. Meer informatie vindt u in dit artikel.
Problemen met rechten oplossen
Een van de meest voorkomende problemen is onvoldoende map- of bestandsmachtigingen.Als je database zich op een Windows 2000- of Windows XP-computer bevindt en je krijgt een foutmelding wanneer je een dynamische pagina probeert te bekijken in een webbrowser of in Live-weergave, kan de fout te wijten zijn aan een toestemmingsprobleem.
Het Windows-account dat probeert toegang te krijgen tot de database heeft onvoldoende machtigingen.Het account kan het anonieme Windows-account zijn (standaard IUSR_computernaam) of een specifiek gebruikersaccount, als de pagina is beveiligd voor geauthenticeerde toegang.
Je moet de machtigingen wijzigen om het IUSR_computernaam-account de juiste machtigingen te geven zodat de webserver toegang kan krijgen tot het databasebestand.Daarnaast moet de map die het databasebestand bevat ook bepaalde toestemmingen hebben om naar die database te kunnen schrijven.
Als de pagina bedoeld is om anoniem te worden benaderd, geef dan het IUSR_computernaam-account volledige controle over de map en het databasebestand, zoals beschreven in de procedure hieronder.
Als het pad naar de database wordt gerefereerd met behulp van UNC (\\Server\Share), zorg er dan voor dat de Share-toestemmingen het IUSR_computernaam-account volledige toegang geven. Deze stap geldt ook als de share zich op de lokale webserver bevindt.
Als je de database vanaf een andere locatie kopieert, erft deze mogelijk niet de machtigingen van de doelmap en moet je mogelijk de machtigingen voor de database wijzigen.
Machtigingen voor het databasebestand controleren of wijzigen (Windows XP)
Deze stap is alleen van toepassing als u een NTFS-bestandssysteem hebt. Als u een FAT-bestandssysteem hebt, bevat het dialoogvenster geen tabblad Beveiliging.
In het dialoogvenster worden nu meer opties weergegeven.
Databasebestandstoestemmingen controleren of wijzigen (Windows 2000)
Deze stap is alleen van toepassing als u een NTFS-bestandssysteem hebt. Als je een FAT-bestandssysteem hebt, heeft het dialoogvenster geen tabblad Beveiliging.
Voor extra beveiliging kunnen toestemmingen zodanig worden ingesteld dat leestoestemming is uitgeschakeld voor de web-map die de database bevat. Het verkennen van de map is niet toegestaan, maar webpagina's kunnen nog steeds toegang krijgen tot de database.
Voor meer informatie over het IUSR-account en webserver-toestemmingen, zie de volgende TechNotes op het Adobe Support Center:
Inzicht in anonieme authenticatie en het IUSR-account op www.adobe.com/go/authentication
Het instellen van machtigingen voor de ISS-webserver op www.adobe.com/go/server_permissions_nl
Microsoft-foutberichten oplossen
Deze Microsoft-foutmeldingen kunnen optreden wanneer je een dynamische pagina van de server opvraagt als je Internet Information Server (IIS) gebruikt met een Microsoft-databasesysteem zoals Access of SQL Server.
Adobe biedt geen technische ondersteuning voor software van derde partijen zoals Microsoft Windows en IIS. Als deze informatie je probleem niet oplost, neem dan contact op met de technische ondersteuning van Microsoft of bezoek de ondersteuningswebsite van Microsoft op http://support.microsoft.com/.
Ga voor meer informatie over 80004005-fouten naar 'INFO: handleiding voor het oplossen van 80004005-fouten in Active Server Pages en Microsoft Data Access Components (Q306518)' op de Microsoft-website op http://support.microsoft.com/default.aspx?scid=kb; nl-nl; Q306518.
[[Reference]80004005—Naam van gegevensbron niet gevonden en geen standaarddriver opgegeven]
Deze fout treedt op wanneer je probeert een dynamische pagina weer te geven in een webbrowser of in Live-weergave. Het foutbericht kan variëren afhankelijk van je database en webserver. Andere variaties van het foutbericht zijn:
80004005—SQLSetConnectAttr van stuurprogramma mislukt
80004005—Algemene fout. Registersleutel 'DriverId' kan niet worden geopend
Hieronder vindt u een aantal mogelijke oorzaken en oplossingen:
De pagina kan de DSN niet vinden. Controleer of er op zowel de webserver als de lokale computer een DSN is gemaakt.
Wellicht is de DSN ingesteld als een gebruikers-DSN in plaats van een systeem-DSN. Verwijder de gebruikers-DSN en maak een systeem-DSN die de gebruikers-DSN vervangt.
Als u de gebruikers-DSN niet verwijdert, genereren de dubbele DSN-namen een nieuwe ODBC-fout.
Als u werkt met Microsoft Access, kan het databasebestand (.mdb) vergrendeld zijn. Dit kan worden veroorzaakt door een DSN met een andere naam die toegang zoekt tot de database. Zoek in Windows Verkenner het vergrendelingsbestand (.ldb) op in de map met het databasebestand (.mdb) en verwijder het .ldb-bestand. Als een andere DSN naar hetzelfde databasebestand verwijst, verwijdert u de DSN om de fout in de toekomst te voorkomen. Start de computer opnieuw op nadat u wijzigingen hebt aangebracht.
[[Reference]80004005—Kon '(onbekend)' niet gebruiken; bestand al in gebruik]
Deze fout treedt op wanneer je een Microsoft Access-database gebruikt en probeert een dynamische pagina weer te geven in een webbrowser of in Live-weergave. Een andere variatie van dit foutbericht is "80004005—Microsoft Jet database-engine kan het bestand (onbekend) niet openen."
De waarschijnlijke oorzaak is een rechtenprobleem.Hieronder vindt u een aantal specifieke oorzaken en oplossingen:
Het account dat door Internet Information Server wordt gebruikt (meestal IUSR) heeft mogelijk niet de juiste Windows-toestemmingen voor een bestandsgebaseerde database of voor de map die het bestand bevat. Controleer de toestemmingen van het IIS-account (IUSR) in de gebruikersmanager.
Mogelijk heb je geen toestemming om tijdelijke bestanden aan te maken of te verwijderen. Controleer de rechten voor het bestand en de map. Zorg ervoor dat je toestemming hebt om tijdelijke bestanden aan te maken of te verwijderen. Tijdelijke bestanden worden meestal in dezelfde map als de database aangemaakt, maar het bestand kan ook in andere mappen worden aangemaakt, zoals /Winnt.
In Windows 2000 moet mogelijk de time-out-waarde voor de Access-database-DSN worden gewijzigd. Om de time-out-waarde te wijzigen, selecteer je Start > Instellingen > Regelpaneel > Systeembeheer > Databronnen (ODBC). Klik op het tabblad Systeem, markeer de juiste DSN en klik op de knop Configureren. Klik op de knop Opties en wijzig de time-outwaarde voor de pagina in 5000.
Als je nog steeds problemen hebt, zie de volgende Microsoft Knowledge Base-artikelen:
PRB: 80004005 "Kon '(onbekend)' niet gebruiken; bestand al in gebruik" op http://support.microsoft.com/default.aspx?scid=kb;en-us;Q174943.
PRB: Microsoft Access Database-connectiviteit mislukt in Active Server Pages op http://support.microsoft.com/default.aspx?scid=kb;en-us;Q253604.
PRB: foutmelding 'Kan onbekend bestand niet openen' met toegang op http://support.microsoft.com/default.aspx?scid=kb;nl-nl; Q166029.
[[Reference]80004005—Aanmelding mislukt()]
Deze fout treedt op wanneer je Microsoft SQL Server gebruikt en probeert een dynamische pagina te bekijken in een webbrowser of in Live-weergave.
Deze fout wordt gegenereerd door SQL Server als het het aanmeldingsaccount of wachtwoord dat wordt ingediend niet accepteert of herkent (als je standaardbeveiliging gebruikt), of als een Windows-account niet wordt toegewezen aan een SQL-account (als je geïntegreerde beveiliging gebruikt).
Hieronder vindt u een aantal mogelijke oplossingen:
Als je standaardbeveiliging gebruikt, kunnen de accountnaam en het wachtwoord onjuist zijn. Probeer het systeem Admin-account en wachtwoord (UID= "sa" en geen wachtwoord), dat moet worden gedefinieerd in de verbindingsreeks. (DSN's slaan geen gebruikersnamen en wachtwoorden op.)
Als je geïntegreerde beveiliging gebruikt, controleer dan het Windows-account dat de pagina aanroept en zoek het toegewezen SQL-account (indien aanwezig).
SQL Server staat geen underscore toe in SQL-accountnamen.Als iemand handmatig het Windows IUSR_computernaam-account toewijst aan een SQL-account met dezelfde naam, zal dit mislukken. Wijs elk account dat een onderstreepteken gebruikt toe aan een accountnaam op SQL die geen onderstreepteken gebruikt.
[[Reference]80004005—Bewerking moet een bijwerkbare query gebruiken]
Deze fout treedt op wanneer een gebeurtenis een recordset bijwerkt of gegevens invoegt in een recordset.
Mogelijke oorzaken en oplossingen:
De ingestelde toestemmingen op de map die de database bevat zijn te beperkend. IUSR-rechten moeten worden ingesteld op lezen/schrijven.
De toestemmingen op het databasebestand zelf hebben niet volledige lees-/schrijfrechten van kracht.
De database bevindt zich mogelijk buiten de Inetpub/wwwroot map. Hoewel je de gegevens kunt bekijken en doorzoeken, kun je deze mogelijk niet bijwerken tenzij de database zich in de wwwroot map bevindt.
De recordset is gebaseerd op een query die niet kan worden bijgewerkt. Joins zijn goede voorbeelden van niet-bijwerkbare query's binnen een database. Herstructureer je query's zodat ze bijwerkbaar zijn.
Voor meer informatie over deze fout, zie "PRB: ASP 'Error The Query Is Not Updateable' When You Update Table Record," in de Microsoft Kennisbank op http://support.microsoft.com/default.aspx?scid=kb;en-us;Q174640.
[[Reference]80040e07—Gegevenstype komt niet overeen in criteria-expressie]
Deze fout treedt op wanneer de server probeert een pagina te verwerken die een Insert Record of Update Record servergedrag bevat, en het servergedrag probeert de Waarde van een Datum/Tijd-kolom in een Microsoft Access-database in te stellen op een lege tekenreeks ("").
Microsoft Access heeft sterke gegevenstypering; het legt een rigoureuze set regels op aan gegeven kolomwaarden. De lege tekenreekswaarde in de SQL-query kan niet worden opgeslagen in een Access Date/Time-kolom.Momenteel is de enige bekende oplossing het vermijden van het invoegen of bijwerken van Date/Time kolommen in Access met lege tekenreeksen ("") of met andere waarden die niet overeenkomen met het bereik van waarden dat is opgegeven voor het gegevenstype.
[[Reference]80040e10—Te weinig parameters]
Deze fout treedt op wanneer een kolom die is opgegeven in je SQL query niet bestaat in de databasetabel. Controleer de kolomnamen in je databasetabel en vergelijk deze met de SQL-query.De oorzaak van deze fout is vaak een typefout.
[[Reference]80040e10—COUNT-veld onjuist]
Deze fout treedt op wanneer je een pagina met een Insert Record servergedrag bekijkt in een webbrowser en probeert deze te gebruiken om een record in te voegen in een Microsoft Access-database.
Je probeert mogelijk een record in te voegen in een databaseveld dat een vraagteken (?) bevatin de veldnaamHet vraagteken is een speciaal teken voor sommige database engines, waaronder Microsoft Access, en mag niet worden gebruikt voor database tabelnamen of veldnamen.
Open je databasesysteem en verwijder het vraagteken (?) uit de veldnamen, en werk de server behaviors op je pagina bij die naar dit veld verwijzen.
[[Reference]80040e14—Syntaxfout in INSERT INTO statement]
Deze fout treedt op wanneer de server probeert een pagina te verwerken die een Insert Record-servergedrag bevat.
Deze fout is meestal het gevolg van een of meer van de volgende problemen met de naam van een veld, object of variabele in de database:
Een gereserveerd woord als naam gebruiken. De meeste databases bevatten een lijst met gereserveerde woorden. Zo is “date” een gereserveerd woord dat niet voor kolomnamen in een database kan worden gebruikt.
Speciale tekens in de naam gebruiken. Voorbeelden van speciale tekens zijn onder meer:
. / * : ! # & - ?
Een spatie in de naam gebruiken.
De fout kan ook optreden wanneer er een invoermasker is gedefinieerd voor een object in de database en de ingevoegde gegevens niet overeenstemmen met het masker.
U kunt dit probleem verhelpen door het gebruik van woorden als “date”, “name”, “select”, “where” en “level” te vermijden wanneer u kolomnamen opgeeft in uw database. Ook mag u geen spaties en andere speciale tekens gebruiken.
Zie de volgende webpagina's voor lijsten met gereserveerde woorden voor algemene databasesystemen:
Microsoft Access op http://support.microsoft.com/default.aspx?scid=kb; nl-nl; Q209187
MySQL op http://dev.mysql.com/doc/mysql/en/reserved-words.html
[[Reference]80040e21—ODBC fout bij Insert of Update]
Deze fout treedt op wanneer de server probeert een pagina te verwerken die een Update Record- of Insert Record-servergedrag bevat.De database kan de update- of invoegbewerking die het server behavior probeert uit te voeren niet verwerken.
Mogelijke oorzaken en oplossingen:
Het servergedrag probeert een automatisch nummerveld van een databasetabel bij te werken of een record in te voegen in een automatisch nummerveld.Omdat autonummer-velden automatisch worden gevuld door het databasesysteem, mislukt elke poging om ze extern te vullen met een waarde.
De gegevens die het server behavior bijwerkt of invoegt zijn van het verkeerde type voor het databaseveld, zoals het invoegen van een datum in een Boolean (ja/nee) veld, het invoegen van een tekenreeks in een numeriek veld, of het invoegen van een onjuist geformateerde tekenreeks in een Date/Time veld.
[[Reference]800a0bcd—BOF of EOF is true]
Deze fout treedt op wanneer je probeert een dynamische pagina te bekijken in een webbrowser of in Live View.
Het probleem treedt op wanneer de pagina probeert gegevens uit een lege recordset weer te geven.Om het probleem op te lossen, pas je het servergedrag Regio tonen toe op de dynamische content die op de pagina wordt weergegeven, als volgt:
Markeer de dynamische content op de pagina.
Klik in het paneel Servergedragingen op de knop Plus (+) en selecteer Regio tonen > Regio tonen als recordset niet leeg is.
Selecteer de recordset die de dynamische content levert en klik op OK.
Herhaal stappen 1 tot 3 voor elk element van dynamische content op de pagina.
MySQL-foutberichten oplossen
Een veelvoorkomende foutmelding die je kunt tegenkomen bij het testen van een PHP-databaseverbinding naar MySQL 4.1 is "Client does not support authentication protocol requested. Overweeg een upgrade van de MySQL-client.
Je moet mogelijk terugkeren naar een eerdere versie van MySQL, of PHP 5 installeren en enkele dynamic link libraries (DLL's) kopiëren. Voor gedetailleerde instructies, zie Een PHP-ontwikkelingsomgeving instellen.
Prachtige websites ontwerpen in Dreamweaver
Ontwerp, codeer en beheer dynamische websites in een krachtige alles-in-één tool.