Rank 1: Thread
Invalid userId: Parameter must contain at most 36 chars. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special character
That's the error am seeing when I tried to sign up using appwrite auth
Votes
0
Replies
11
Participants
Unknown
Messages
12
Rank 1: Thread
Invalid userId: Parameter must contain at most 36 chars. Valid chars are a-z, A-Z, 0-9, period, hyphen, and underscore. Can't start with a special character
That's the error am seeing when I tried to sign up using appwrite auth
Can you share the create function code?
Rank 1: Thread
This right
mport React, { useState } from "react";
import { account } from "./appwrite";
import "./auth.css"
import { v4 as uuidv4 } from 'uuid';
function Signup() {
const [username, setUsername] = useState("");
const [email, setEmail] = useState("");
const [password, setPassword] = useState("");
const [error, setError] = useState("");
const handleSignup = async (e) => {
e.preventDefault();
try {
// Validate inputs
if (!username !email !password) {
setError("Please fill in all fields");
return;
}
// Call the createAccount method from appwrite object
const randomString = Math.random().toString(36).substring(2, 15);
// Combine username and random string to create user ID
const userId = `${username.replace(/[^a-zA-Z0-9.-_]/g, "").toLowerCase()}_${randomString}`
await account.create(email, password, username, userId);
// User sign-up successful, perform further actions like redirecting to the main page
// or updating the application state
console.log("User signed up successfully");
} catch (error) {
setError( error.message);
console.error("Failed to sign up", error);
}
};
Rank 1: Thread
import { Client, Account } from 'appwrite';
const appwrite = new Client();
appwrite.setEndpoint('myendpoint');
appwrite.setProject('myid');
const account = new Account(appwrite);
export { appwrite, account };
Everything seems fine, Just change the variables order in the function to this
await account.create(userId, email, password, username);You can explore it here
https://appwrite.io/docs/client/account?sdk=web-default#accountCreate
Rank 1: Thread
Wow! thank you it's working now
Can you mark it as solved @Devben.tech ?
Rank 1: Thread
How do I do that ?
I'll do it, np!
[SOLVED] Invalid userId:
Rank 1: Thread
Okayt thanks