Common Error Messages

Blank White Page (No Error Shown)

Most likely cause: A PHP parse error caused by unescaped double quotes inside a double-quoted PHP string.

Example of the problem:

echo "<th scope="col">Label</th>";  // WRONG — breaks the entire page

Fix:

echo '<th scope="col">Label</th>';  // Correct — use single-quoted string for HTML

Other causes of blank pages:

  • Missing PHP include file — check that all require/include paths are correct
  • Fatal error in a bootstrap file — check the PHP error log at the server level
  • display_errors is off in production — errors are silent; always check the log

"XML-RPC server not enabled"

The DokuWiki XML-RPC API is disabled. Enable it in DokuWiki Admin → Configuration Settings → search “xmlrpc” → enable. Also check that Remote Access is enabled and the API user is in the allowed remote users group.

"Not Authorised" / Permission Denied

The user is logged in but lacks the required permission bit for this feature. Check:

  1. The user is an Active (status 1) member of the association
  2. The required permission bit is set in Admin → Associations → [Assoc] → Permissions
  3. See Permissions Reference for the full permission code map

"fn_General_LoadField does not exist" (Silent Fatal)

This function does not exist. The correct function is fn_Gen_LoadField(). Using the wrong name causes a silent fatal error — the page may appear to work but the field value is never loaded. Check any recently added code for this typo.

"Collection record not found" (API fnerr: 2)

The dxId passed to readone or update does not exist in the collection, or the calling view's SQL filter excludes it. Verify the record ID and confirm the view's filter includes the target record. Use f=crosslist on an unfiltered view (e.g. group 7 “Recently Added”) to check whether the record exists.

Database Connection Error

If the platform shows a database error on all pages:

  • Check lib/const/env.php — DB hostname, username, password, and database name
  • Verify the MySQL service is running
  • Check that the DB user has SELECT/INSERT/UPDATE/DELETE permissions on the database

Email Sending Fails (PHPMailer Error)

Check Admin → System Settings → Email Configuration. Common issues:

  • Wrong port (use 587 for TLS, 465 for SSL, 25 for plain SMTP — 25 is usually blocked by hosting providers)
  • Authentication required but not configured
  • Hosting provider blocking outbound SMTP — use a dedicated email sending service (SendGrid, Mailgun, etc.)