sql >> Database teknologi >  >> RDS >> Mysql

PHP indsætter ikke indhold i mySQL-databasen:tekst, billeder, hvad som helst

Din kode fejler af to årsager.

  • Din betingede erklæring leder efter et navngivet element kaldet "send"
  • Du forsøger at udføre før sætningen. Placer din forespørgsel (mysqli_query() )"nedenfor " værdierne og gør mysqli_query($dbCon, $userREQ3) or die(mysqli_error($dbCon));

Sidenote:Skift if ($_POST['submit']) { til if (isset($_POST['submit'])) { det er bedre.

og <input type="submit" value="Write Post"/>
til <input type="submit" name="submit" value="Write Post"/>

SQL-injektion:

Din nuværende kode er åben for SQL-injektion . Brug mysqli med udarbejdede udtalelser , eller BOB med forberedte erklæringer .

Du har også variabler i brødteksten i din kode, som kan kaste udefineret variabel x ved den første sideindlæsning.

Som nævnt (i kommentarerne nedenfor):Sørg for, at du har oprettet forbindelse til din database og bruger en mysqli-metode og ikke en anden API.

Forskellige MySQL API'er blandes ikke med hinanden. Brug den samme MySQL API fra forbindelse til forespørgsel.

Tilføj fejlrapportering til toppen af ​​din(e) fil(er), som vil hjælpe med at finde fejl.

<?php 
error_reporting(E_ALL);
ini_set('display_errors', 1);

// rest of your code

Sidenote: Fejlrapportering bør kun udføres i staging og aldrig produktion.

Vellykket forespørgsel eller ej:

For at se, om forespørgslen faktisk var vellykket eller mislykkedes, skal du kontrollere for fejl og bruge affected_rows .

Referencer:

Hvis du prøvede at bruge billeder, kræves der en gyldig enctype for at være inkluderet i formular-tags.

Afhængigt af hvordan/hvad du vil indsætte for billederne, kan det være en faktor.

Hvis du ønsker at indsætte billedet som en sti er én ting, men at bruge det "som et billede", sig en BLOB, så har det begrænsninger i størrelse; brug LONGBLOB, og du skal undslippe disse data, før du går ind i databasen.

Rådfør dig:



  1. SQL konvertere datetime og trække timer fra

  2. Opdater mysql-tabel med data fra en anden tabel

  3. PHP tjek databasedatofeltet med en php-dato

  4. Hvordan kender man MySQL-replikeringsstatus ved hjælp af en udvalgt forespørgsel?