Quantcast
Channel: Active questions tagged svelte - Stack Overflow
Viewing all articles
Browse latest Browse all 1541

Astro + Svelte send form email

$
0
0

I'm using Astro + Svelte for a blog project but I'm running into some problems adding integrations. In my case, I want the information to be sent after submitting a contact form. I have tried to use adapters and services like Netlify Functions, Netlify Forms, SendGrid (I can't register for this service), Resend and nodemailer, but I don't know how to implement it in AstroJS. Any advice?

<form id="contact" name="contact" method="POST" data-netlify="true" data-netlify-recaptcha="true" action=""><input type="hidden" name="form-name" value="contact"  /><div class="grid gap-6 sm:grid-cols-2"><div class="relative z-0"><input          type="text"          name="name"          id="name"          class="peer block w-full appearance-none border-0 border-b border-gray-500 bg-transparent px-0 py-2.5 text-sm text-gray-900 focus:border-blue-600 focus:outline-none focus:ring-0"          placeholder=" "        /><label        for="name"          class="absolute top-3 -z-10 origin-[0] -translate-y-6 scale-75 transform text-sm text-gray-500 duration-300 peer-placeholder-shown:translate-y-0 peer-placeholder-shown:scale-100 peer-focus:left-0 peer-focus:-translate-y-6 peer-focus:scale-75 peer-focus:text-blue-600 peer-focus:dark:text-blue-500">Name</label>        {#if errors.name}<p class="text-red-600 font-semibold text-sm">{errors.name}</p>        {/if}</div><div class="relative z-0"><input          type="text"          name="email"          id="email"          class="peer block w-full appearance-none border-0 border-b border-gray-500 bg-transparent px-0 py-2.5 text-sm text-gray-900 focus:border-blue-600 focus:outline-none focus:ring-0"          placeholder=" "        /><label        for="email"          class="absolute top-3 -z-10 origin-[0] -translate-y-6 scale-75 transform text-sm text-gray-500 duration-300 peer-placeholder-shown:translate-y-0 peer-placeholder-shown:scale-100 peer-focus:left-0 peer-focus:-translate-y-6 peer-focus:scale-75 peer-focus:text-blue-600 peer-focus:dark:text-blue-500">Email</label>        {#if errors.email}<p class="text-red-600 font-semibold text-sm">{errors.email}</p>        {/if}</div><div class="relative z-0 col-span-2"><textarea          maxlength="150"          name="message"          id="message"          rows="5"          class="peer block w-full resize-none appearance-none border-0 border-b border-gray-500 bg-transparent px-0 py-2.5 text-sm text-gray-900 focus:border-blue-600 focus:outline-none focus:ring-0"          placeholder=" "></textarea><label        for="message"          class="absolute top-3 -z-10 origin-[0] -translate-y-6 scale-75 transform text-sm text-gray-500 duration-300 peer-placeholder-shown:translate-y-0 peer-placeholder-shown:scale-100 peer-focus:left-0 peer-focus:-translate-y-6 peer-focus:scale-75 peer-focus:text-blue-600 peer-focus:dark:text-blue-500">Message</label>        {#if errors.message}<p class="text-red-600 font-semibold text-sm">{errors.message}</p>        {/if}</div></div><div data-netlify-recaptcha="true"></div><button type="submit"  class="mt-5 rounded-md bg-black px-10 py-2 text-white">Send</button><button type="reset" on:click={()=>resetErrors()} class="mt-5 rounded-md bg-red-500 px-10 py-2 text-white">Clean</button></form></div></div>

Viewing all articles
Browse latest Browse all 1541

Trending Articles



<script src="https://jsc.adskeeper.com/r/s/rssing.com.1596347.js" async> </script>