Top-Themen

Aktuelle Themen (A bis Z)

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit

gelöst PHP - MySQL mehrere Aktionen für einen Datensatz

Mitglied: Dantaros

Dantaros (Level 1) - Jetzt verbinden

07.10.2019 um 15:54 Uhr, 193 Aufrufe, 4 Kommentare

Hallo zusammen,

ich habe mal wieder ein Problem mit PHP und SQL.

Über einen Klick auf einen Link wird der betroffene Datensatz in ein Archiv kopiert und anschließend gelöscht.
Das habe ich vor längerer Zeit, mithillfe des Forums, lösen können.

Jetzt muss aber durch den Klick auf den Link noch eine weitere Aktion durchgeführt werden.
Es muss in der Datenbank in ein Feld ein Timestamp geschrieben werden, damit man weiß wann der Link geklickt wurde.
Ob das vor dem Kopieren oder danach in der Kopie passiert, spielt dabei keine Rolle.

Der Code mit dem ich kopiere und lösche:
01.
if (isset($_GET['aktion']) and $_GET['aktion']=='DFUE_fertig') {
02.
    if (isset($_GET['id'])) {
03.
        $id = (INT) $_GET['id'];
04.
        if ($id > 0)
05.
        {
06.
		$archivieren= $db->prepare (" INSERT INTO archiv SELECT * FROM testabholung WHERE id= ? LIMIT 1 " );
07.
		$archivieren->bind_param('i', $id);
08.
		if ($archivieren->execute()) {
09.
			$loeschen = $db->prepare("DELETE FROM testabholung WHERE id=(?) LIMIT 1");
10.
			$loeschen->bind_param('i', $id);
11.
			if ($loeschen->execute()) {
12.
				echo "<p>Datensatz wurde archiviert</p>";
13.
			}
14.
		}
15.
        }       
16.
    }
17.
}
Ich hab schon versucht noch einen Block mit update einzubauen, allerdings ohne Erfolg:
01.
$update = $db->prepare("UPDATE testabholung SET DFUE=?,  WHERE id=? LIMIT 1");
02.
        $update->bind_param('si', $upd_DFUE, $upd_id);
03.
        if ($update->execute()) {
04.
.
05.
.
06.
Ich hoffe ihr könnt mir bei meinem Problem helfen.

Mit freundlichen Grüßen
Daniel
Mitglied: TripleDouble
08.10.2019 um 08:23 Uhr
Zitat von Dantaros:
01.
> $update = $db->prepare("UPDATE testabholung SET DFUE=?,  WHERE id=? LIMIT 1");

Hallo,

bei der SQL-Syntax im UPDATE-Statement hast Du einen Fehler. Das Komma nach "DFUE=?" gehört da nicht hin, da Du ja nur ein Feld aktualisierst.

Gruß - TD
Bitte warten ..
Mitglied: Dantaros
08.10.2019 um 10:01 Uhr
Das war leider nur ein Übertragungsfehler.

So hab ich das aktuell getestet, allerdings wird DFUE nicht richtig übertragen.
In der Datenbank bleibt das Feld leer.

01.
if (isset($_GET['aktion']) and $_GET['aktion']=='DFUE_fertig') {
02.
    if (isset($_GET['id'])) {
03.
        $id = (INT) $_GET['id'];
04.
        if ($id > 0)
05.
        {$upd_DFUE = date ("H:i d.m.Y");
06.
			$update = $db->prepare("UPDATE testabholung SET  DFUE=? WHERE id=? LIMIT 1");
07.
			$update->bind_param('si', $upd_DFUE, $upd_id);
08.
			if ($update->execute()) {
09.
				$archivieren= $db->prepare (" INSERT INTO archiv SELECT * FROM testabholung WHERE id= ? LIMIT 1 " );
10.
				$archivieren->bind_param('i', $id);
11.
				if ($archivieren->execute()) {
12.
					$loeschen = $db->prepare("DELETE FROM testabholung WHERE id=(?) LIMIT 1");
13.
					$loeschen->bind_param('i', $id);
14.
					if ($loeschen->execute()) {
15.
						echo "<p>Datensatz wurde archiviert</p>";
16.
					}
17.
				}
18.
			}       
19.
		}
20.
	}
21.
}
Bitte warten ..
Mitglied: eisbein
LÖSUNG 08.10.2019, aktualisiert um 10:32 Uhr
Hallo,

$update->bind_param('si', $upd_DFUE, $upd_id);

Die Variable $upd_DFUE wird im Code definiert und mit einem Wert befüllt. Wie aber sieht das mit $upd_id aus?

Gruß
eisbein
Bitte warten ..
Mitglied: Dantaros
08.10.2019 um 11:16 Uhr
Da hab ich nicht dran gedacht, weil ich die id nicht ändern wollte.
Jetzt setze ich einfach in upd_id die id (könnte ich mir eigentlich auch sparen) und schon funktioniert es.

Danke für die Hilfe.
Bitte warten ..
Ähnliche Inhalte
PHP

PHP-MySQL - mysqli liefert einen Datensatz zu wenig

gelöst Frage von Windows-SpielerPHP3 Kommentare

Hallo zusammen, ich habe eine einfache (und nicht normalisierte) Tabelle in MySQL mit dem Namen "elemente". In dieser befinden ...

PHP

PHP - MySQL Datensatz in eine andere Tabelle kopieren und löschen

gelöst Frage von DantarosPHP11 Kommentare

Hallo zusammen, ich habe aktuell ein Problem. Ich habe eine Tabelle die über eine Eingabemaske von Usern gefüllt wird. ...

PHP

PHP MySQL Login

Frage von YanmaiPHP7 Kommentare

Hallo ihr Administratoren, ich habe eine Datenbank, in der alle User des Netzwerkes enthalten sind. Wenn ein User sich ...

PHP

MySQL Update eines Datensatz mit Variable

gelöst Frage von Jens4everPHP4 Kommentare

Hallo zusammen, ich habe jetzt 2 h gesucht und versucht und komme gerade nicht weiter Ich habe eine Mail-Verifizierung ...

Neue Wissensbeiträge
Humor (lol)
Das IoT wird schlimmer
Erfahrungsbericht von Henere vor 10 StundenHumor (lol)1 Kommentar

Nun auch schon über den WSUS:

Sicherheit

Win10 1809 und höher erlauben nun das Sperren und Whitelisten von bestimmten Geräten

Tipp von DerWoWusste vor 20 StundenSicherheit1 Kommentar

Vor 1809 konnten nur Geräteklassen gesperrt werden, nun können endlich einzelne Device instance IDs gewhitelistet werden (oder andersherum: gesperrt ...

Windows 10

Hands-On: What is new in the Windows 10 November 2019 Update?

Information von DerWoWusste vor 1 TagWindows 10

Die wenigen (aber zum Teil interessanten) Neuheiten werden in diesem Video sehr schnell erklärt und vorgeführt.

Grafik

Gute Spiele aus der Ubuntu Repository: SuperTuxKart

Information von NetzwerkDude vor 1 TagGrafik2 Kommentare

Fall jemand die Firmenpolicy hat das man Linux Software nur aus dem default Repository installieren kann: Ich habe festgestellt ...

Heiß diskutierte Inhalte
Ubuntu
Ubuntu-Putty hilfe
gelöst Frage von Nickolas.GroheUbuntu53 Kommentare

Hallo Wie ändere ich einen ssh Port auf Linux Ubuntu? LG Nickolas

Netzwerke
VPN auf Firmennetzwerk (Festplatten, Computer) einrichten, aber wie?
Frage von 81083Netzwerke34 Kommentare

Hallo, es ist ein Bisschen frustrierend. Wir haben einen 2012 R2 Server, eine Fritzbox und etwa 10-12 PC die ...

Windows 7
Festplatte in einen anderen PC umziehen lassen
Frage von Ghost108Windows 728 Kommentare

Hallo zusammen, ich bekomme die nächsten Tage einen neuen PC (komplett andere Hardware als in meinem jetzigen) Was für ...

Windows Server
AD, Sysprep, Clone, SID . oh weh
Frage von heifumaWindows Server23 Kommentare

Moin, ich versuche es so kurz wie möglich zu halten: Ist-Zustand: - IT Dienstleister hat Monopol für die bei ...